Blob
#0x013c36d572f59978cd424731888f500789e143d97639fcb21d0fc1ab7fddad77
Versioned Hash:
0x013c36d572f59978cd424731888f500789e143d97639fcb21d0fc1ab7fddad77
Commitment:
0xa90a88e09de8a15bf19e3947e84fd98062561f1b200e8bdd29225751fca931292377e0dee9c12f95c5da3876ccbc92bd
Proof:
0x90910f81573b07b2d111dcd32c3f8eb0e063da7d6fe2964dd05026cd89112654043dca0f96f2d24f269aca160b1b2470
Size:
128 KiB
Transaction Hash:
Block:
Data:
0x000af40f087e4336f0823bf08118eda9f2f29ca7fd135a6b66bb803b11c88b5d00d6561800f8c3b4e90c92e7bb9d56ce509ef9952c57f5215a049e54d36d20bf001ab43213a6169dec23816e3e7012efe75b594fface5e4ccfe1ad2dfbc844c2006a232de94bdf1f67abc1c45b41339d5f68f77d7326002917530eeecfb821ff008f9afe40bbb3ce1dc132665f7897ed3bc9e185374959d046b5e06411a8df8b00de2f5a1b02d779650837aa35e0851843ed8c93314609df82839a35131ad75c001f08969fd51b9487219002870353dcc097137380f0138ad28d1deba0afba3600200324492a44837eb8695ef0340c2ee49c1ae3c2d6ff6a8223f64e9745fad3005f9cf26ad28afe29ff70160f00a75a7abf41a381ae960335bf818c1014e19c000b174192d41956865f1ad085d1fd8da4df45c0f83a71c061a46ec914013de3004f98c32a74ff3059956e0604481f6995b4a33ab53cf545ff6d36ffed5a8125000278cf9dccee5647c541f53130ebe94f413424a6a560aa345bb1c2a46ffcb7005b2016c5ddcc13f4dd2da7edb7184b33868a4ac5c3702b6f6c26ade849fd13009e8bbbc6f07f7faaab03da349f7b4c4a78534e1c0669fade5f8b55d6848bcb00a40a3962b9f1aaa6331673aedb3292aa14aa007fdb42b00cfc943a1afa3d9b00e05c6c10cda63a0423774fcb69d2d68a1c61d34c37602a5bed424263e8ff2300d7391295b4d3dc5b1801fb9f648e6328bb8db1622bee4082844e7aec1dc889008eca3b5b7efa93d3152e93c54787b921ddae328dab8077bae737588fdec7ce000fb830979793aea95bffa8ed8768de4fac5b3a66227b37b315aa9aae83cb3d008cc3787b77b4f570dce6aeebab8785d34a2b1f3496e14f99390a128d60211500f897e2cd5d2d663d05b1df5b600e2086b9d26f56c99dd4445b08f134a07ae900f2332bf6c0c873774e1b7ef681e5efa2f03633153d2c543bcd982d1ad726a700e59e8a4e62e8666270d3aed07d06f976b3ff150f035b007fa114acde9df4030030d09ef3429ddea180a4033106ee4b58cef5a81bb736591bdb408cb40116fe003cd4e8d0a35d0e5ad1e2709becb68afbc208462e49277fb511cc3f3578b3e3006200982fc5639478a22ed226216256b2cbd862a6e1989d921ddae0c3b4a6e2001fee1e4186a61b6206ed53611a5e987e70bf496d447f288035d3010f2aa674001396390f1b38daf62193c40798421c22c3efe654f1cb819bedc3f75b016688003047b5694590dee3b0c9ec475db78b0b1b3b7c09a299b6b77ec29fc9f27a6800caa61f46783088bc9de544c44137f33412bc245c55738587d0d75f0780a96900bafc0c8cfa5660f041eac707ad6f58318c09c83e0431bba2a91b3e78d0906400a4ae0a1ec8d60539bfe5f150ceea433c47a6d34676b74b64bbf94ad1abb816007b053429321a435f01b71f9aa791d552c7cca7dde8d6d943792462cfdfeb4e004b521876aba8a75fff2b94b37add1a0fc68ac6e0f7c1e61c72a154f10a557a001c107b562345242dc02fbd30c0006c65a444615cfc005450d23e761a3a044a008ffe18d43146bd6ba406e1d1a9028d821e34af115854341693f8804bc2c7ae0062f6f5c73cc799e6462b9653438edd921441faf4f4367ff9ce23c35bb861a70084e32f030fd2a0c19892fa0f2d666f8f4e6586491f91547740270de18ea29500e7e3759a4a9acd3f89b4f2bf0f0a953d431f7fe65d985738b98020cd9d53cb0011a2a7bcfbe6c883a9023d11abb563abb9e6a2a6414409492f13cc3e8d1704008e7bf217b0c0552cbd3c8fa4f935e118d9a12a0b51ede06482e6d76518625d00f71db5f664dd9e003347e1df5b04d9fe67fc58b7c153d0fb36a32551b68d950018f819f0585b6e3b9032e78400d882da92aa54fca473b6c8a40bd4d1e9f02c00c1669946e7ca5596bcabd2de12f520483ad7befb21f20285ef2d580d22f19800348469c8fd78810497afa66a23d329ad38d221e6f2b240c0cdb8b1a4d2555000111424b901f5535e05012ab06ab6cdfb48e4f51b11bb2d38f42961426c2c770057e5df5ba5dc23fb3e2f500e660a10daa4e3ef3dd6d576adaac51782362986007db71c7cc08df908790263ec8dcbc442ba07c445dadac7cd9e59005e403c1500957a14ae8aec0f683d656919bb167933d871cfe8f2394a0adeed1f816b3bba000476fc3579710da5c03a2080228dc3e2e13a32fef6febd88d791aef8e757d600b34db137e60edc5359c9cf2a66ce5821a8076b30f965a5cd9e1b44381b8e6e0032de917d30f13a6237da4bdbd7d1a3a5aec206a0f852cc768013f935456c8c006443c9d67ec215e0ba64f277fd20cdc4b3f318d75529e1e0cf50ccc2583d3f00b20f4a2b68fe0e436587ce510ca3fc2bb7bfa75f2a132a6ecae76113c6d02d000018b4aff47b9393af99d905b29516e29f664a9fab64323102332403488ae6000f9709b39b7ad2e5ed279ee4cb40cb5fef9de1daa76b195614823841537e1500e17cb4de47967f9f8c750910fe9c138fc2f64a9b3e5e49754961bd12b3f5a10090d2a2c9cd740ec6d77c32fd19f9670dc26b99c05757c687b8af84ee22e0ff00aa5bd2d1b417d5b4073a413aa3118830c068816bc546a85526403c971f3890008317b6d1ef57c651ba41017a7667434bcf642decb5b9cf3a0aa1e8f5b76e3800aa3816fb663f784b788cbdb076c0280c67bab67803b99e8cdf25046f7de98700094883cce96a566d718a154193885e9d7089e4fe8cfe0239bbf1dbba1f1b960052b26ba7bb04796f91d3c94d909e03f4eeb60f36d3cb3af90b5587df779eca0039135cdf83c2ae59ec7afcfcf686d8e2803c841f02ef5961b4b44d226e875a00e1ed2162146b337991d64193fe8645bd160a618246a2bcc28fafc933085a500061781fcab0314c95129d2f96df2cc128e853032976e7a2a61a008c5984ed6d0044c07d74b9764b374758b3ea0ec52aaefd3fdaa242ddd0861a42039a39e01d00e63f4bc1c8fe25360d7fc492a22c5f52ae7623d0988a2cc6cd8d1a7d68342b00e50e73faa95c68c3e34e04d0911f3e9eaeeef393f7dc58fe39eb495af2de830018bba859126fd11ce276fad9e5ae0ed6fe25b1de52bfa57039de8add8c6a81003b21c6693b052d09e7f92f7ad4ed310dd3213953c735337bfbef21c31fe70600092c996e5367d4f2d2c54101e880fd71e3f907d963c9ea8ccc194b970529a5001cca0169333489f51763526ceaba58e895904b6c453a7b7a2ceebb5fc5459300ab9ad1abf15d19f7a21854f98205e5212bb40f7bb71479b263cd3e79115bd000bbee82ffe744beec7d20bd5401a7f0f0dfc8f05b23cfd00f813c9979daa4b300b07501d28400aebc634eb279db49f82af43b13829dedab560d797765ed57c000ed5a5352c48f3d4272773951d4c06f4839e2f9dde463ab4c38f9ce1dc7ea28007ba79b4f87d11f9d1dd16c6014b82707507beb06ab9d3884325a077d6dbd8e0013d2ac7be1d6bed43cf47a11e05be7a42d12258d4dca2ac51c6502cfa8d43c00a47dca43284769719dfb84236f5fae0bae674e2f6944add329da2f0970a95c001a8fa2b4580661600c3ba438307fca1f7e7f470567fffbc9380b825588424900e2be6b0e776bf5864e6f7bd1ef1495afdfca22424a1ceb649ae770c272f0fc006a6a0309f5b46f012e007dad43c83d2769f0e2d68e46cf7d61f6f71fd4411b00feeb7b1cffd5c49b044b9e71bf831903dc5be5c404e4c0a742bbaa4001de3a00f4414621fd662859f2a28c09df0fef1847162095e080ffe415ccf9d2fe48b8004263ed2193f7b8dabc1119067b911feb645351e43ffb6003aeb6a7fbe3f77f000287978e013b03fe17084b61088cb3ae63caf08606a5ea090d6c80e4ffdad40050a2dd021107ca4d60217a47e68cd1e88acb37f99364e3b5fd9b6facfbecc3009ded6d9281244fd97a230a739f655666f0734f6e368edff69cd991d31092ed00866a30015c6465cbf6043332239b7de784b3ab906edd1e945b7c40b7ecdd350075886df8c6ca4fd7c068b38de8b7645ad2713524bea7fa118681905f6824d0007c22a53ad91c3a30a8312bd101689632ed9ed4312775d2495d72526f9dd457002775d5499d735248dd7452079dd459278584d46b27f5d6497d75528f9dd4550027f5de49fd74d3887af0a49e3a29a4ee3ba9bb4eeac36be2bff89ab63f2f7d00854cc8fde3fcd6a9626f4e7d7f300cab17cab0d6e74dea6ab44c8f5602388a00e4ffa9188438607d8a65b17ddabe03edbbecfe6f1644af909be4e05252f2be0066ca1ced72a3dfca240dfed6b8cc6a4bee06c3859206e4d317d37c7e8fff8800b69a7feba3a60412953f6cdb004237ee81a4d0fd77eee76e04930bc5abab2100466c9a2605dec7b7a0ce2166530e8244484cd31912f61e9721bb89dd8bfee30062818cf199f2c46621aeb926bf79f8ab38affc4f9e6bed074c80595055c1c1008755b228d5aa04f525a37b53d7ccbf7803e4f536c556caf581e53e6da341be0091fb6030fb4ccb70cd06a634361914bf9b430ca1ccc1745f8ef4a99a27fe0f0030d20657ac96c9cdbd9cba173e545a4580c38f5c9992474d026e6d20a5031100bf5633b5546e2903678671c83b4f0cf1ee21b8d4ed9005e57bdd372ae5709700da7ffc278a23cf223797b89a50c32d8b3aafc1da57e67c501b43a593fcd74c00e1804241563df373d7c254cdb6db6a6ea89867a182732d87510e2b17a1c4dc00d8e1f9e1d39d62db010aa1aefad799908e811edf5a6622a4f7196a9db0dcf20058f6619df590372b9836415ba055b0672523d1219099efdfa2ccafcb9ef49300ee5ae3c51cc316bba623a451d3c54f8be14fe7b6dd8b5c907fd8c2f7c930ea0057621375d6d767955a0abffe6b25f040b7ee8354f3a42173f6488167bfa50a009bf1d92bf0ca040650bfc4a7d1340b55619250e29fee09567cbf85e848e52f00304e5cd8ef407c79df5466ec047b563df49b6984533d761875681e14f3bee6005e1d251f6a2febe7ceff6d4025cdba06a05f5a2157481f27ba2088332a1b3100130432b9d3f037ac3e79d8d198c1f5929e7f55757f6b1865b7d13c2caab76900a0770f2d43dfee00a29100f267c09c439de7c98f7df027f5b93d6f1fda0ba700fa44dc51520d1c9badf2184ad7243839076c6ebc3e404ecabaf15a74c9351100d8dae237f87af64fe2a1bbd647eb59a42a4d25864a06f8ddd968c85db0e7fe00a4ae28709808cdbbbe325e92dfaa1510b77b8a8c7674fceac08204814af5ec001d4210d39d1e8ae4abef99af3ad18352326be45dc285426ae876a5bb813f6a003877c5a588e6a580e69a96684d21ba4a1ed18814739968bdd154b3beba24af005dc96b5174e0f1981bec1b518ecb1bf7687ba084dd2eba95d1cf5c1b3cf35700b9be920925cca72f00a81545ae4c826ea7624a1a3a35723438eaa35b3be3530029b8de93cd1f91304dd201b8bd54f739387a811222ef5ac022bd236a234e54006ed8aafb9005c1a49b2c606e84b960cea44b2e9fe45c5ff09d7b6f618e3ffd0014576c28e543309e9afbffcaeddb59854cec47732b00bf943a1481668429de007308940cffef89fc6a6e9fa2ad9f2c69038e4f6c63863ad70f44f2188b242a007c4e79aa7388d89f2b1fc9df7538975d7f834e1cf9b0fe2bdc730f9174fe9c005f035a46848868b90352d513b48a2f5d0fe4bd4588e108337f251804e593ae00a35e0d4449f8a723380d1fb040d7ec39bca8c159842f76ab59ce952edec99e0047481b94d8a64d81857b0c4c8044bbabf71f4bf5dafbb08ff86f3d8a51da1a00f197a27a48c368ec6d14af9f796d9b91221988c554113e09152621647c964400810e71f9af349ed6269c6734f999845b7afba429820a2aa06d1f656189c8890070402dfcfb770f1fadc55b630ae55fe2c08f06a3f0370db150a224cf8f370300ac0b5d78f1cf4184b20a20355d5f84b195da02456d8d91eb8635a64ba8b32f0057594b0450b5832379437efdf4e2e9aafa01c43a4bfcb2385f47c2c7496b1100f5cd9e9ede905b086bc0eb1772b7f2c68f634e9a3fbb5b994aae85589cdc1d003e88e7998ed4943f940527b5875d764fad0030c62f1c67fed7d1489c45153800124a11bb048629f524b92830303768d325f7689180d3c1a4a85354fcd4077100bf64c2c0f07330436216844cd89d9ef338f84f959a454a99d1d77b0a318007006de46ae000fa73ff3e6f096c507a22dd56058289fd98b2d6ea9852408641590050d8a3f90cbe8bddd3438be2acb6f4abf4761a273685e31d0483f798431fed0058e02d57a8b91e40507d52afbf80d2464def2dfdb7412436e64254632b4219000566fa6341b5aa981131e96c3de576fca31b6a8ec9c577876aa2b0b4cd49e900918813f8dee257a4cb9571eed72396753f056c4d16aa62409a9b25af611afa0057ffd261648f51f26edea4ef4ec15351f38b5aeeaae2f8ecc4ad4d9b319fe100c945cba1d2968d7ba82b61e5dd4845e148e2c2ead360a4f200da59b51c214300641e7623e69e7fb710eb64cadd09e689b25e88dcbd456bd1116ab3d6ef4bf500c5c1cb287ca6bea250105798ebf49b8adfaff2865b187251d5613fed749eb500eece354c373701be52517106ddc5ccf49ce7674b828fc82430a381b493799900d79f27ae0c6e3632c729228941ebf10ffc9815fe9929c5db0a93de51557ad80009d27b350953a17adf6bf2d986dd1c8b01d017a7b468c6ebfaffdf72d76d5c00f9fc9914554ea7f4cd54c9449a71f4fcd5e1fc923e7b7e3887eb343ebd78ff001f2ac138381c44fc3f46b7f73673cc70c0a6eaadc498071d2480575e9034ea001c3ed78435dd02e91baa58fb0b13b53845d3094990f0bd400e06f3cd1aeca8009692385ccfc4eed2d46e2bfd0580a067ceb1d5618a880fcb216df8a8df12ff00018dffd18278f11c8619de3daa5e181e5b3db04fdaf825d6dd4b5a49fb7c100096f289099ebe2ef8f82d9a61068614f9c64107858ecb144ca8332de0d934ac002756bb2ffcf1e46383401c00af5733f3e6d73c90610dd59074f13ac6206e68008bbfd707ba7c53dad2802fedc63ed4466b626f1031fe213d11195d94b3e084003f478155059dd1b0141a1b24beffe7e31d6ffce9a3d76d984908d3cff7f5fb004f81c2c7731584bee6b860359987c2673da00feeb29d8b583d8150e00adeee0096fab18e96ddd87039e505c7ed650e1bf95d24f8adc154868fe79af590b9da005b7a657f722aec04845291e10d7753ec76c7458ea8266ef2a11780a7485db100a84948d83d5cd8f53443290e9e7a93d692fa7acc2b17886a1bd0b736cff85000f65d876bdb0ef90bfe8014094ebb6ed5be011d49125f70c8734a02271135a1006cbebe4a169120de0b70742d7323dac73ba2ce4915868dcd3f690c1524a82900808cf42bac5de4f3e6781331611ec616e0772eb31604316c6422585441bae600271e168ac65bff649ba5f1c397f378c49dc000e69f515c11f9ed997e52b8d600ce4c1fabbaf8958b5daf07a212035974746082e92869ca1bb77a0d3ed75e8700aff1b0d097d36df237dbdf40156a255ea38a4d6840c143da75d51ace1990f2005c6f6dcddc61dd6888d339f0aef8fa6d613cc55e7315fa30fa7435058fb28c0098a1c1fa6bf828adb2d63f46ea66e0a985a2b434febafb2276dc4149de506000f627439cf829e90650aa25a1abebf58c1f463ba2079870fc7d95fe11b92a9a005cda121ec5bddd1fc4046e2598f0f0b1ce86eafeb68586cd673d1e0e5a3fc900b04a98f0edf91fd18240973475422df403e0712dc141e7730b1ef17b8c857b00a1d30f14307ba9b69834dfdf60f9fa980fbe8cba5e602b860272a35cf147c800aa13614a45043b1638e0cc06ba1a74b953888434e857fa20e449172bc124d800668277bd0b3e83a5d994e54158167c7eaa7b43651cf6514b75036d3f47029d002a5f08614c071fe074bb732e27ef4d7fae4cebcc37de028380ffff9f93b056008f86247a0f513a68364a8a65dfc210688e7fca8edff670494a5a7e0a72488300a0cd37d9a3e505193535aebc8a7f7efe5df08c01ba07768eac0ac8c3884bd900c4d1120b2bcd71debbbf0b8eebbc1912ee594ea10e1362830ffd8f55ac8a5f00fdb3c72f043742aacccad197ff61b0b9e135d85f71f2aa28d82580fb6bdd3500f5824dff13b92392ccec9b521fbaa4c363b89f3c28049ad58988307e37ba91003c4d21a4069f56bbcd7da63b416991d0a9b49480e0a043413e2ee1c2beabb00058aafe1a814c17e0e5b2d795bdfde5f114f7d4e0c34f3c93e9db7cfd076668005df51bea76fb8d590a31395c46c6c03fcfb6591e97bc4b5e1a7e7a2ece59dc00b3e2560864ae88c94f71e39253771abd06102f5d8f342cfa52404ed30fc5a700fdc86c1a5a469fca513cc1b2c30d47770354b885fce965dd42ee2a5cf97c410075cb8b748761ebfa2c82d02cd95a4b446f4e28da551ed7e120b8b62bbfe60500f8dfe4cc02eedfbc68778721aa923f73b057faa8a9e67438e489a67e5efdcf00a69e04c593b8bb4db833be13063f73b13298f3ddff29721037146c52281c8a00ea832e26315b2322b943495196a390342bb84d018002660afd618b9ac935bb00957af576607bcd4e406ad61e01bcfa93128e2ce8475d0d60bb09c5fc0153e1003150457b4e6eb405d32729d27d4c69d071436dc8c3d94ae120a51373795b9b008bd1a48d3c19b91bfd687132f0ae7b1594a343c19e35a0b09341de873afb4200a8fb97e6bd87bd3835c03b973c3ff2c8e8c713a0f1cd1239895fd8ed679ba900bb550571c25d2e4ffb0e3ba74066794ee4bdb96b9c887530a339deaa9a0ef200d692b8858169456653bc5b6be777b4526e6279ede9bc9163f607283600d91a00feba39ce1b22e6aa39e1f048b7b0e5404361d8c829d3b354c4d78f72cf96330020fe1582c05f5ac97ae3f34fa25f6b9486b3ef7c53e92f4cb68d06556587ae0093791221c00700b6e9e28502fb780b85ae2576c0e4e45e5d6d729b87cf45c900a6fbe773dfe343304ac2578c78698eafe61942f9d3d422f4a2b710dd928f9100ce574fe1a33ba08327de5675b903185d868080addcc01eadc19b9deff0ffc700c4e9a8eb0954dcaab5c099050baebcd96c648e5ba9ba03b75ccff10dd8c5bb00ec64e657e6071b1b44d552b948b6736a79f10aa6f17d2c822c6b1f16002c72001c07dfe1ec06e9173d885ed756498579971c6a255bc7894bbcf1214c7d2b51003222d2382533db3d7ce676c02c4b0f8989e8863317f5bf2930b2bf39ab627f00ca6f8d9b7e5db27ee1019e76be417fd8cb8654b986c9b63dac7e12d1f23147009d06e47cbc58dd5e5d2c5d4549635a6fdbd9528b07df4c9499330e4ba1045d00b152a8e41f2118d416c3c2dd36c4f1023aef83d7700038d449a7e1c82899fb001a3fe325c92f0faf97065d53e5ad4f7dcd7fe45b73c31ca064c7d938b4adfc00c453def286bbbde7a6983380ec6a92c87db921ca4a36f6867bb48587b12af1009c00e47492c730dc6250551f6a02badbb58c2223c8858593e06e7e1986240e005a9bfb3ba9f7c54cf971fcbba7a9b6ab8ea87dab9142a19db21f11a298df6c002923711d156ec33c3e9cb4888020a3a070b971bc88e9f9a1a5abe17ac86df80033715b190aa681451141ba003d3a625ab2a4802a1e8a54c6ba97d8ac55938f0066058bcb56a38bdfcaa77750aeeaafdf3aef27fcff3cc08632c99e858591db0036a71deff15a9442d06cb1f80291d8b3891351b10298f2d62b516855a198dc0037a675c107e283f68bd9fdbcd688bc40d5e45152e9c98a565c9b438ca91523005b0953b39300d2b9ae1bca5963920343ca5ceca3e4996fa23fd1be82a18da70065979d190cb3352869609bd2480dfe42665996bdaf33251df360ce44c3baad00a2f02babb3de0148d76ba48723df9b294062aad154b4cb3ffd2dd5366b81670031e51d88a5bd5875c89491606ffb6266e3204a8a51c59eaaeda24cfe07e98b00da3f5fcc3b3e9f713335927dc5538d3f22941c45ca8cc7c5766170c1b5010800c7395c97ff29dcfe0d2942dcaa8b79a33717a01564403273836b34e688ac4f00db8efbe79d81157e0ef3156f6f1d9ff57ae0d33ca431f781d5b075f0db0bb300961f1444ba7945b28e4000530d6271725a9f37e847621b5ece6973f52acf7e003619f7821a9be824cdb5e88c84829906bf4fb509cc756f1492ea3e5753ad9200c4f88cdd3e32be54de50c225322a3886bf324064be201f0354b102b90fa5740021e74e03cfb176735cb6b1eb071e293aeb1501cc87653f234f05fea3c5895300b584a1d6f6bcd3c9ed1452bceb5ec7d4e88032e3243a08a612db18e787074600186466fef6ccb3f93142232e44ceabb475038262bfefc4b5139136a2fff0e700b48f6413dd7b34e505f791aba648ed6b2a36c32cfd0ce63df829bc0fec861f002b7f27d38a694bd6d5556af89b89bb5645fa6548668e62b62ec8017b22233c000486da8feb10f2d4556ed2983c1e258cbee792b04f29098a8cd77a0c5112360062774ac31782c83f2bdf6b804f4d0dec81cafac1d7a18e3d67f34a5ad1630e00e968f2974e3b406f9b4b3a18ac859b7a5d72a75d68296da0115dfdefbae8e9005fb9792f773f8162142aede7f31632cac2ec7a3f0e7bc7f2f27c96ce94e67600238f2e740cb1a7460076458c996028e1ae6500ec1fb13bfcc3fd8837473cec00a43fae4c6393f65d768832f1661543cd1451fbdb25bc408299ed61faf9d4b800713c3e6fb010422bd21e4082650ca23115f1533686c4f5aa0f9348a14e070200cc3b26d36ecaae83f54b31f290010f0eca060fa4d49ce106f54e057523b530002bd66115938a72aeec9863347c5fa10366533023c43b64fbdfa575f595d8cc00afd44046c38c3577f264e372d2fde205c4bbdee5f8874ca4b0143283a50bff00a6f1cca3f86b79b724833ea84d05cfa022d58dc6adbb0f083d4304922534f700972429f10f07db27dbe250081c1d483e032ec39698931e8e9ef7e16303877a00d7b111c0b236da273fc01eed0ac5e9ff291f5a9d1614998f1d46eff10740ac0087f37d95f6ac371d449e170cd2a749c2b05cb423302fd6d08396634cd6e66600f8693005e13732fcc551f103923531b4b21438872bbcbee71664e8f717b3ab0049bd2383b0920ae072818219aa666be061cd5f194e2b2d1d458e5c41c26e030043e184884a6a1be0c9688060aa972b32bef9ef53a396ddf0906e523b77fb07007c7f439476cc4974eb2085dd248e2c793714c0049a6930aef2bfc8f667e4b700c0cb4401cf77e143d0580d8fbe67f7429fe820848869adbee326c3d714caa30092414b8168b8dbd9fcf2157961341b51ec91dc9d4546a3777666023d0648290057bbbdee30abb6323ec294f219d7d7e071030e12c28d02c3310e0fe5ead511001331abfb697ba4c1a0cf0991e3990cabd5c62b54f3d7d14740292d89652efe0052b253db5e0f490032cdc805267c81bc1169b5d87811fc584982c392f17c6600b04470c5f320595697ff5f7ce00398b8bf75f9b867ee6fcf069d4afe454ae200c54abe456a390ced8b84e888aa48fb840a2ab916aae531b48c7251502e2868001814540a0a6a0505ad8282764141cba0a05350502e28a81514340b0ada052900d4a6386dc446f522a75fa5e91302251e91d219133abe43f11e0a34cd0fcceb009d501f25d2930fb075c01c1d69b4a74b82fa7cd429b0f842c44d08324004d200039fff2f5c33eceb89759f8d73f359cf529f8b877ea42373fcb0ec82a1025a00e079f5f525c41b3d99bd9dbe18debf0b08737c411cb255f2cf56253cdbed90004ed4588ef2919e0c85015cbff4abff1fcfce76b70c63fb17ae468339ee7cc5009e254c8b682c737b5db8217af09db405931d960349700cbd02bd0c01e62efe00dd17cedafd8959178161a2e6db60c0d8682e9c01904a05e5f55f687e965375009fe2c01524538ed09f0afc4ef6eb520e53ad8e117cb2bbd8cc4bcabf11ddb500159b8fa738ccee1851dea17e32b6bfb5527543f8639e2139b2e0797aac0051000c86956a81539d17830713d68eff7551149d02ceebb25b1c4fb51d627baff400fbc01a9d102be8ed1e9b288f599014e73267ec1e28a5f1ed7d0ab8bd8e7d2500f8ec625a27067cc52f9bb2dc64a78a2a0645e36020acbe174ba338d1f6c697005c86db93fbf7e9edc8d48513606606fc591390944b9a9e92785b72d0f29d7000581f5b78b4b4f81446c6db65fa377d587b406dc1861da5d1a02d5d5f41bc25003a636dad99fed71b0456c29f5315fae062354292b4d6481dda09fe4edc6cac00fb8ea3dae46d6b3c7f5de67c5ba660aa88fe5dcb5b26b3c6c8cb136d80abc8006b2d0e9ffbcf6f40278fbea86cc2e5cd5cf119736d7c1aaf392df36bdb4c9200c4c9b83a1a47e45e8a27eb814cf2daaadec53e7a5b1454a7c2336b4dad70910016d0f966757913e1cc4140141e43fdd30d010d80f76ef042c7decbd21c209c0078ec35acb3d29efca96c22ba4e5739a7f11e6e061168ae3ef22847fec26f5000c18036e1a4049acc184220ecbacfcb7ac50ad9cd81eae1147303a40cb0c68a0049af2fdbb77b54407ca589532adf1edcee162c69317fd3b22ce8557b5cd649005f604baf1cacc3c185b13c4ac66bf6c9528b78f1425ef24641860b6fca9615002205958d258093a370e8c755dc2fa20b76138d2dfd3ffc01040bbc92bd54a5004140afe3297ebd47e39dbc6632fc86711ca1978bfc023b9ecda99c0ba2b15400873e4f8711585bf91f20a8358f3a3bc06854ed5742da0963439a41e5b2be9e002bd65b17057da2fdf6009fc3c43a4f7c0449c2bffab29ce0375c612e1015c000cba5188eabd7563519f11ef3e5fd3a42d0bfa3bbec71754ced03c0376fb390005a99f41604e4311ea4b20b20dff3f9e760467e227d3091ea266cf009133a9500c629ed931d2ee7edce2f8db1cfabbe14fd61e2c6537d83f99d09c91d016da800f7dbf7311d40c67a68bd987daccffad74274621910c890948abc7cc4fc475600c45886ac1b07bb05869e6788a7f71754ae9a7ee784c03049a4f0ad775ca015007088934e1bf4a3348c98c281f082571f79fe8c6d41a1cdcbb696b5aa2b7c8f009bd1eca9a7939aa1ec8102a733c7f16d2b70829a4ce97b50c8a16c1ab6bff9000101b08cdf56f603ab0153cba28996ce51c378ef4bafffff78fcd54a31b1f60083cabadda4f4ae812f67459e17c2f04a847a462163cc6fb0939ccea93f25b50024a0ff29eb8afdc7e78dbf7e4bfdb326f9115b1dfa2546a999d232262cf3f900ad935a871a6cfc6dd11b1e4b813dc14c937f8026796e8ec8f7b887ebb92abb00373c367c8d54ba407071f0a7c1006567116cf33761122ebda71e313ed4f32500c8f33bef09a78d47a0b7d37d20b6f64318e355a01eb2d96e7150a36ae800980012ef467b92696dae575d34b2ad1a10492ed1abe2776ad2d77ad5de2d7622b300962e5e173a87266cd7b9cf790e52651cafbc693cf0d1e6ecfe33d8087ac97f00d8f5672db902ccfd02fb25fe9c698cdcc4c5a10bbf1186405d45d311ca396a00f999b12551cb73b7e3dc07153f4af065d63577cfbb63eacfeb89abc32d2a9200237e4dbb709344c5513f00f76c28f188495f1e792e0fef90757a1a1d5a780400cb4304c6cb0a2637b5b9484d6211a0f05edde14251419afc38fccec929418e004b9fdb43ff35c635b3fdbbca704e8da1665f6a29ce9b26e6d8dc8a0008b48400fbb21ae8a9cc18367b9268d6d7a5d230dbe76f6bf399b2e07962af7f9124a900e59c8b3b93f25f0f7df8c3944dae63a6fc1aa2c33dd55a0a3adf8c8fad72d800c21e3081377a720142160c56e27b1d8e09bf0d2be760581f24607f453fffcd0019f3ab7cc7fdb852839de663cd17a417b6fc167546ee434e5a742da13c8a5000fa8fdfd39788cfa474458fb3356fd34e6e8df8cf30a69f286c74aafbfe18dc00b413ab635363fa1228635d574a64e7f7bf1c6902fe02dd77328849f5c96fc900d54c5bc5bd809bb9f0fcde38bcd9ac2fbffcfd614f1fe7233f1344d582067800f29b87517fb46c159be10d20ca26b63521d8e5c6aeec66cab0698bffd6cf5800347ad34c378fb7cbb36b2cc08fbb5d3a1f7caf57444bc1a769aa5e6f6d565a000a2d4f0305946a2c2e01172f721c7bf63f34270199363cec9b42f6651e270900e9883c8bfadea565139caf4e4f929db229a04ef0df9f9e43dcdfdf32c04898002a466f8af6c576da8b7029defcd4f7784aec43127c02b8cd1d7564b9bdb2a500570672d2d597550f2f89ffc013e9cd258a88602b81753d12a6e16d1618f31300188b29cb84d1e90895248dffdf1e00474f9922a53c19f94fc570932dc7c97c000438623babec70cc1e873d740d249272c618175386c3a6cfb5bd0a7fc47c1d00f31b4998a1213dc6f1373abd3fb92fd93d3cb161788c7061d81769b76f925d0067314f9effdc8587cb2801024bad9b8b2427531990f464c0abd24772901fc400fca61ab69d0c0fb938b86a14489217443fc544f9f9394c95e838b9e01fdb25009868b35573bd5eb6d70a304eae1610ea5784d5593704f849cffa2f57b635330018fb71e3151086ad73b74f7a394a0fdb80122c5ccaa3484c68b17d2635bd31008b07204e3766c870f9c5fb3d72d94f0fb363b26f4563ebfac8f588bd00c796004f5a0601220f0395e7a8dcd9b60c94e59d7a20bfbd959bdf6415e7cb18a5540039c595774908d43f8489bdcd18393c18818218c84f7c3e5cd2631cf40687e900125f933ab8b2bf415e4fa3f3bd86cc3aec07aad47072e2869663be3d43cae300a21603444ae7486afa537d12dbb6f9daaace20cd58a3c891da696c5c1f1e470053d5e81ae59a001cd2163e37d9f67f366dff508da41de8a191b479d84db67d00a32dd940943033da6c22c33c766065537e11b96dc4ded1f68196a833c533da006070dba914964adbb07a7d61fc8c7d0889be8d1ecce3277e30382f6d9895760044b637fbb9070937fa5dd743ab7ffdbf681611eb2817430e6c5312229fd60c00a7f58765946e55434aabe2b5aa91dc1d0ae9924ffe17b00f1450d9b97d446b00fd130e914e502551dfa18c36d7ee8e93652e03bb40539e1bf27507f874cf9000c718ea91a34e292998d557ac853f9a1f124c3e71e11343ec11cbc0d2f65fce0053f9b9fc1d140243ed32f9f24690cdffa61b9593ee68d9658e9aada7bfc7f7001a0a2903ec639f5da99a37b6757fca43e091bf37042148c27ead04f66d259b00757618305090243424db20e1ba6ffaa4b926a22374a2a13f6cf84bec3d8526008157700b128e0139713c7a605144ce802cafa23bf4ae1756a98042f9f649a10026cd2f535c4b6d812208d313be2fea9b0ec25498ab477bfc53dbbae961140d00bf9d42f0f56d1c7c3b0bb968ad44034427dd10c2b57670c16d0137d4ce2da8003334a9223032e56bf0926c9a94da9b9b90e29c73aecab1c502ccbc0429166b00ca066a0efec012b15d2f5c251a86a1c623b8a3b9f8ac29bd643f787649e32900ae38b94d2b464045f50b21753a340ed2f61f74249ddc61d0b5e86006597fdc00000bafc2db69f89c24adcb4bc37c424f8793af54f459e28bfe2d0bcdf1e13800615c2eb482f323b3d8b72174c1e597920f408dd2f12ebf97b6fff9a6b37e1600bdcf2c0dadd23bf375b1515472fbba89b9c767369e93634cf0c3b4cc6fb19800fc88e10516cb2c9caa531b5248903b0f90813f7e053600b81f5e003fabd54c002a1aa1579e80cfca66632271dbd676d6dfcff88c082a239617a3514292d64800ad0d6f62e74d2370bce794a427458a29592847fef3176919f3c96cc76ef99a00e2d67f6f03228031f3df8a44324cd7a992aa471612393a41cfba6cd79344da0085683db5ae62efefbd8ec49d31f7f916d9c916260bff1c07d553edd43294d200d7ffc75ad33f9dd5b4ff4dd7599947d1d7613095f341dc803b0eb4a45eebd6009d41eeef76222b07506177afbf6c713dd8b6d31f1c2d32f7d524c99336999300093d4f12cbd071acdc5f92c82c3e13fa26fba57b93ecae75256e7d5078af9100d03119800d6a5bef8efa1be9e2505413dd2c4ca5e1330436bb2a8def695e090020049df72a4e7a8e9331c16f3def6bb198f0fb0658ab0dbff6d48bdc9273a300d5d3fa86d6fddee42584fdd301c8b6fc1464bc06178bac4a2de8431e770ab60008a391c156691697f6ea28d194fb2049d1f578c89d94bf774f159728f5586e00c080d6600ba95aabe823ec5552f5550b1869888eea5aae222043687a019b05004b060fee832ebb6deac1d826e37286e23bedf1bfb22242b30285304d7cdaf90009bf2765a4df50cb1b5b8fa29143f70feae051bcccf938f6d77df0d6620a640085553120b0479fde30f09bb69cd74143ace125d1e1b0690a916c2c617c9d3500e4b9e7220a49dafc5e81e251dfbc1cb5893aac49c454f40ecee9454d0754d100c67a8cffab83839cd973db0d1111650083e15b28097332a538919cbd5e0351007a4b6c786475a8831cb2ca9b2a8ef76fe800159b5945fb0c8f5ca80d0c82b7009436ccca411c04393b1249ebf61749bd30680e3ad1f8d91302fce96edc15f200e3d186964720eb6b9f60567ad3274f7e90902ccfe763493a69699e9839cef300d3b2f767a9c40012bdd136867beb2e192f256bf8a052b79a1efa730354515f00024cebb7e9762b1dccfd0f9a3f7b93e1bc159e600ca623de015c80d2afcdfe00bfc472666ec3ff0d57847a13e9d3f90cedd59d7eaba72a389d7c5f85e7a5b9009bf5b77284f5df903ee20f1c647ab83ea1f958799269b2f6d5ac8a9094463f004e9320f016cc3605f4c6e9e728b435b01c32345d09ec5dc87931992d8f88c400663b64c89dd3fbbdab0b136f25ef9adc7fa6f4e97810d1dda94c5cdde86dde00d7c8cd40da7f2ca7bd286205802cfe9c237f66531734fe9a6a8b90b82943930099f0caa8d948107d3208a2f81fd6590c90ebefa178ba9e66589683d4f6bc8f0046195875791d30c721aa940e2799e921c02a79bc133adcf7042fbe32b468ea000e9ea4b2ea96bc35a70db0bc946c48453f7dec004b4d0278b67ed183c83a4700ff2f965a3ed1197bcc90590361e44f1f3d84ea1eb1f6970fee439c082b9f99008bbe64e51fe8f89f77af9b893ffafb9c86f3ef27d3dcff4ffb28cea4bf981000153fa2da118e80d58572f45a6edf8462d754278e159bbd7206b40a8f6c514d00c8c2fba72c9e149d304da3dbd7247f06a3f76fb9ef3da5419ceeb9b2b695ce002a4e6784189b048547d6890978c01b0a20512a6d0b6374aa487b024949caae009ec582d4a13cf8532cd6aed46c8058d7f92c61da4d37cd2d3dd769fc1e08a30023b2a6e3adf73e64990c9b3ed2ded8ef7aff9f975c0698a9ffd003f003ffa0008e21db5b7150aeab07e1858dc924c9a9486dc13cd74e76f400aa64bcd92f9a00c90cff5dac1604af2d8e68c1df3d637c90bb6b191076714e3ff752e23f135e00afab477200f36a5ef666050a59c790a2082facaea3d2efd0afcfe6da36396f0004de44c6b82e254ccbbaaa88a50f0dd286e321f80bfb205f4349f5dfb9a03d00970836f54ff7e500d28071f4b01b0b001bbadaa8ee8ceb4b6898cc159b2657003a875e2d69f55e95b5ee7402dd7230d8b2130474f30afd1af739a5fc1e41a5000a397e9085c34b856bb9580c9149d82722560ca37322fcc580cd87d1d5b6a700913f0cdadbd00159f09d29c3b9281834c57229323ae8883e7d5bc747fc525000bce747c0e9a2cfeaffad69a0e7d17230be84fc8f2ae563a66c43615cd41fb40055e01e22b5481997ba66e8096a10109e723471c82cfb273bf518b96cd19fe800b6a0517d38137568c484cbe187dd253e548199578c0f434188d35e12bb40ca00ab21837c8a8e210c8047da1b853a436216bb5c5e9d530080ffa0f10cc5c44100eca50b487529a5d26bacdbbf07bd44273953d4e55ab5d9b8799b86be40cc20003aef671ec75f2a70606484082303f832b4bece04801a767f15f2d2053540da005a54c91b9ce4b5ece8172ea23b2eec38493154a0d31bed4b61b465d30302710004d94c1af48cd44e995377c1db3e56e0b46dc4bec09d0335647e150c476dbe0053cd56b784968045f336c8f060ff30b7860e65102b8da571a7958298fa2a4600b7da8f61176fa249ead53ae90cb2dab90ba610ec92d4ac83e55926af19a66700f13650ba92de5518e4ae0138598bab7eaf00cd3ca1bce7462b2cc2d1d5ee780006ba1b8ca5cda151ae25fa654e1a279ceeefc376f45f2e5033f3dc000a7f850098d90df6e11f24fb8737d60bc248598e25d4b02c780ba5cb05a875b30bfc2200c086f760907866e0d89f33f8697b855b079b4bf882a2c132b74905b6bf071b00758b30e1abbab4ca33156fd7319c1593f8c108e7f52cb16f2b2cdb534dd1bb007f603aa9999a16c71d64805596f5f6617f667a3493f41d137a231da680dbdf00c8d28811764473b561a3a2c4bd1cc411a1781112fef6d6c411db95fff1f5c800db3bfc143d1e59c19fb2f625e341abffc7336dfced4b0185e544d3564a29a500595f49789bf1731c8571a97702b834a7487885d914e2382349daf9d667a009003d3a8f7ffbd0e50a15d621abfebb20130ed799f02eb2cb8a37cafaa68de07b00b4a3022663e1cf4c72f9d6050322dc890683619724886e3429567c47b82d4a00b3726ce696099bd98d9eabe24e75c63524be4ecddd745888ea6eb013d162e3002b899b12ba478a8479374a00f28fd2b15295f7f1c2e92364f4a71a2db8c40e00c77ffc5911e720c8ca774fdae4686f4e4681a3cf0efd25cf94e356ca9af7e9003ae6b87211094dd187b74f420ff55b814fc7aef26b2f4062113d4834fc8a400008d9a300122b347fa734ad989021f8513c6238039262a74d9816b4ad75498f003d5f547b3bd822ca699c6866ed46983978db36f7eff8676dc47f49530dc3f3005a4048a14b246eb31a4c307fb0adda2fdc96cef9da24f0f75041ac62754284005ed9d65e6acd9c435fef12c78037dfa14da1490c8e1c9f3f426729047cad8800cfca1e8bd2cc14d6210e80180f6f6f899aa8d198815b165a2e3d6ffc1d16940046c8d26b809e1fd2f6eef6e46c55275f427f39a1e7bfc2e272795fb79962c0003f5f50592e0a9e3d30e6434a41aeba22102a4cbced4c40de22f77dc56d11ba003c169f3394a57d181d3505d6ed941e4294b7b285a57ef6aba3b8cc7c32b0d40017fd73dfac6022a7c985e0f059224935b7cd755b033d836f55bc1da9f3fef300a0f568e8ffc88dd1066baa0665bb546b2e7063eb8187dcfc4cf8fffb1537f300b3abd7c12a286b191f6bff4f7fec22f60e14d8e10435167b081303f870daa500fc93142da3cfde21f14ea6f211fd15eda2073581d14115ff3a3978654c4f9100a42b05d8d46fb6d7b48932c20f423c0337569f77e7aa8568ab722ba14a02d1000b3798cb6e54c9c7876859ce1a2b8bdb84426d1755731d4a184a538bbff072009a7f2c4b7e6e17a26250021a4b37c2a9590d2adb2d1a7e756c186430d9a1d40014038b4f123b98f9e51c66ab17e1e83bdfd7deb34205b384ba11f333274f3c00623fa7eea35748bcfb3000293d30e7c600dc5acbf09def0e69767973c1ae4000168ef37606a9e93f141c63c2cee627fe5c55188d69e63cfca59fa43dded6f30051265d3b691f6b5b46959adf9ce82db247e579289b2fff0e4d0010b753cb9b0018f02b937f9f3e7e37d82fafbdd9e6f50ce03082186a2646af717d9d980a8b00792f7138c6ebf5f8d0844df1cc452fea57a033b457c20eec7995701dcd033f007e54573acc7d3522cf18c0670d3ec68fc5df6353b80003e657175bf14ba2dc002b9f6055ac8b62079c0f266646b29f0afe8582b1c05aeda6d799a28477162c00c489ba404f28ee8f42fe56b2439bec77b50028cd05e855df19e9c6d033443f00babf74f4f7354fc742bc06f7b58ef453aee485c0ee7ee1b523418240efb80f00e9f9f56914b960ace30d26b798b8f3c5be6ab29284225a0d3ea7e0d2e56a480022f30214b9ecd99a36b6dd466be2c4a0fc3b14bc41cdf9daf07649fff230150094ad8c6a39bce52426282e1bc521bde61034e71f55b940e168a90338b705350071bf39a4d8e85abacd3e6583177a80474a305ad649ed29ca6c712ce6a1df49005841a78981275725eadb7fed3ecfff13c75f39546cc2e20fda21023a4b561800398c27b2b104a6e46f49574b1970e4a01ee506f7f96a7910608941cba9e6fb00fdcef520864083ad09bfc62bc4497531a03718bf724d59409adb584cf9f72300dc64b1a961f0df6dd1bc112b3c7052bd229ec57c16d97b23e0752af73e3d0000b24b979daea1aa77e1b92124921c79be5e688fef1ba2f11026688b0ee7f9df00ef2489f8638a33f68a45724c22dd85a14bb4aeeb5b98ac4f5b27697c52216400d7b96da965ea9d5d583bc500ecdef1fcd1250d80e4be5785235359fd46dee8002d58acc9d634d157159ee8493162a2930f608735403fa28748b55465e1473f00723953f19f58113cdd42eccf5ac00126acca5b48882ba0e978fb1d46f61d40007f918a9ed7b6f3f244d2f9667a51137d968b4b198f7129f39d5990b176060200a09f3e2049c90f82a6500712cbc62a8bda81641bf2c9d4b8fb7747510b2dfb00911d7e4381c8c49940af4b6c76a0a76a4c0c7551a39df999c71f10ce4539180019dd054818659ab36b14df40cc22bd4977bf1a2d65f0268cf29bc20cb85e9e0017e154ca5db5f02bb16765c8e2621adeb6a907a0e2b69e9e178c9ddfc2530700f77432bddaa27f524c765ff52c6819f91d54fc5f2ab3619073abfc3c67d6c300338c7308af1afba139c4328238315ae2f23c462806c657154286954c8075da00c67e9f61769b6740a72d8353eebad251a37ab745812412957966362362174900da642cabae137ac4ce9863c524aec959372f1f74c0bd9f7607f20cdf58502100a125738dc3a3191001f1560e893732e8884c295c9efdcf2c58b5734e38d53d00c3f8b7db6e6b4781cb200ef638e90a9c30485fc1120b36c892181388f89b6000fd54ea89a2d9aed399263fffe2dab27ea3441e2052c3f8a44f76f3eb5011ba00f87c6ce7713d7e14e3397c0297882b94195ae6bcd925a9ce0615fc4f89263100b634f50f233bd6c47eba6fd007e270079b69cf706d29ff6fb1b53f560106dd00ee6633da3f61215e4b6095afcbd30b21ffa95c69e803ea9cb635c11590890800139cb55d05ff34c0a68abd9607e16d4814035776b959bb4eea2ea185724f6f00c2cc9967fa8270601dc022ddc1b350a0e010af9c78188e4fb28282e09e71a300e1a8bddda6f7b83f8dbc07bb7b33516cef1cb9afb56a59f90dec2ddf7a778e000c04e8eb6ae3b2768b5dde543245ed4b8cc0ca7387e81dbb4ab423b521a035003d491528742ed999c1627238e5e4ea4b6a73b9a117fdbbc8cd74cc48b36be6005dc59a93873caacef3c1aba61ff1957565e6d5381dcf0574889ec35b7b48d10002059ff0e3f8e5cede72685596c2b96c5eb6b5a0555dd1331c0ef9511028a400211e261ebd9c73da32b17c8d6219681df7eb064aee2948b815a0559d115c44001ab812f8416a609e2d774a35652a57e3eddca2e6b9aff5682babfe96ce4970005dcb78aa264f17750fb198736322bb3022ff458e9544ddad5339d2713b8084007c25a451971270589c4c9f4bc33bef10e13c0ac454ed9022533d62b4ec39cc005dade2dcac53c09e8c97995bf14ccd1f8ffb210bc50fffa1f9cdf8e5daf607004afaa4a4b3f48e9b73655fe4568ca84100f015ad90e6373b44584d8a61dbda001d51a8e43f377d13cd4b66f03b5b4193ad5a2149f8b70e8c09fe51a475479400bb90be8143576449970715ff22880836c6c256d887cc6a6ace5915e0d576340019e3cbbe3014ab25abd8ffbb5a65b26c681391b6ee078df472593bcd4cde0d00e76f0673bd1d086e721417f2fedf7196595d92f255b2f70b73b2a33fd415270042c9f3f5ccf7791fb979d266d2a1fd6b6960abeb67845f7af549af0ea39a7c00c7132d899cd3db1a349e468761bd0b9e902eae661b3a280f70830e8248b5a800abc69bfbc240228d8b151ec79f5ada65f52b880786db42ae9c483234539fda00043fd5130bfad7abc9cfce48348eb49d2b1d3fb9256da7bd8d0491870425cb00dee23860246452c0a5fe82ff4f799548ebdddacbaba9aa20eaf780a0ff01a600455b24128a24191a3ae82bf281ffcd6e2d0e232d5e29ba7d845ebd980748d300718411dfc3ba73dcb8bf70c6a0fa9fad801d95041754ad4df395c9690e93de006b3faab2f70b3fab8c08219c64889a21a2f74d42f61bdb4fc414d7f73b8cf3000ffccd835b56dbd7e42fcd19894a3d2a97839abac2ef529e0a7147709b9078001989499e34b4f38788fc3179c8e4cfd428e21aa341363dc006de7fc3088152002f31a3c782626bee1af3ca819dd06be5d5daafaf05656fc194244d6d9d373f00a16745509f343335f26874c0ed16e9eeba8bec0cda04708fac0255fbe3f59c00d0230770e1059c1cf329e6dee73f63603f1be81c43f14b58ff57f68e53ac8300c2195b08cdd7cbc9ffb7753130ed5ee985a784d64ff2cb38e8491cdf2ae7ee008580be4219bda5786a19085629cf103f00951cff38500f7bb2d418b37d270a00d69c463636cb827e91836266fd50f94f233d499af2d9953a19fdafaa05e935007452cbc20a69b4ab968c0900353f33edc003c28b64eb9b70e1f808801d7652001cb13a15dd0a89a58485fd7b44693035c81e502ef9bf8ce26289c073de7782008f70959bab4feb703e63dac3a79d4b197d89e2f72c669bb1b836315671dab50040393d2f437d13609ac3ffdfb6b160929c8e0812f4a6357132274bc29fcd25002153d0a43ef1df93d2628d5b399bedc3883cea53fe9bb72877a109549feaef004c6507ba56ef96f0a952921eaf88045336252f492180bf781206df3b9dc16f00a75910b85987a81dd5209d61ba4f43b355fe239b19fafdda872f491475df4c00b09dd403aeb1521fe4b2ef1e68fe29e6f48bf882008ea96cd05246c5cce496003bb502d0bcb0c101acf85808e2c64a2a649eabf089c6efc9e87ff1bca854d600644b86fcd3439b9bba4a985f4785a30e7dc57e2a007957b405b46bfafd66f0004c60bfd05e782d9c2d84bf166b2eaa7fa65cfa704b43ff0138e4641d8fe13e00f9af5807e6f67441041e3eba8c52d5f1e6afd79d63d0435576cc1c4e8e3a880033218f387ee3add8edd10a03d58b3e0ec41b81958fe739698a75f1f698066e00af75f30630389845ab195b97c39e1307af96fd6915e37a56e93d7c2602f7aa00330b20eafaa087de494f26f4fc438e8870a7f06d64b8f1816e0bcd047bcdc900b80f8927e1c0b7ece81d9c36a00418d86dd6ebd6af15cfd5715a4ac9fa38ea00fef768727b5d91ffe87c38dc94aa45eb9a70129449f91dfeef268967a691ed00e7de11d2d7d978b7fea699770e90024768a739a82e559205cc01fabcb0849700927341e5898ee2944ed5701563969592bff0c9d4e9d68c47ef24a9481e76f600093ddff53eaa4b52c8d2879f8fa43f8fd77c79bd60a5b5289817185d333c6900cf590801c8c771316f99cb3c4f9b313ec4b2361dba18cad2949fd43dfa6259002a1ddfbf5272e6fd8aace1984c6a7a36d4e1f90c917022e94c7e0b306a034a0084b0cb67d5de53be23103afb886c9dd080fa439bedd69b9aebaf504ce24bba00c7f98e8a1238550f07ee36b24fafdf593b97c3509b191a0f29e3e3719d71ce00cc36229d1b8b41d6fb5a1e6684844d506a0522eea0f7d876cf46945fb0627000828b7b8cd0ef0263ce871a2f2e47cd4503e8cd321206b46d44e265dc759bdd00d456fb5c1fd16a4f2e965313e7b50b5cd05fca3855a41ce2c6a79007b3337b00b31b5af9039e566a7a8a574a211d7a8d1c208e36f2cda273fe2e17833f645a0054d4dfee98a8d5e0e2384d4fcbdfae312a659a3aa1c204ce7e952c44ec60070055a95399c787edf586aa53998e2a1b53c5ef7a7f491f726fed537fcc885f0500c5492ac58e90f401d666703c76a3e90ad7df8f5cfe746617b4cabdc46b900600d01ad2b99eecd887a9afa6d6e3e6e7e4cf664f86027699b19db53842d40a8300042dd8c138afa11ddcfb7e30c00ef0e910636f07456ce8818bc752fbabfbfd00f4d1bce72f4a8771a543544a8fd8e28f6a6866307ac209515dfefebdd4d564007f95c8c0bfe6a689c172bef4f7465a508139d230f45a0348afb0f64b7fd5b800f7941ad3d6928f7fcadf2395dd698217b32b1775c7586c121026034d610ef000d7e09150e0a945d5b198ba338b08d48c51585a8ccf430822d1a575f6d6d07300dc004e3c0f2ead47677c735330fd324e9c15d65f5a20d3f34846ab25f23b21000b05918409f31ad85befb50a4fdaf6044a1ea65f225110b9464dc9aebbec6f003baae514b61934e9f8101e007b088ebeea16f552800cf7fbbf0d2c17a8afb0007658c597a9caa6013077d9a7144889d8e331b77a9e24f676d78c59f574d64a006375fbbc7609811173f9934a668950f946fdfdf50c862e6157a33c497b0e04006d7fa02fb04504dbc266b39abb079fd85b24966b1484f1c5aae83a81e7941e0065234a0742f57ce85352307dc7c519d08f1d8775dcb6fb3ffed3c55326f81300f53a410aa5f6eeffb989a1a9eb7f7d7a915ad60a2baf889e28e7745dddebf600bfd626c8a698699e904e8d110db77945c88b5ba8a937c3a31cc019508cee190059a31f05ac83764215543a63bd16b18db6b41f4f33e57fbf8178612f98d76c00cedafd60e3ce5da0716e79a6c62e880252152134fb43e70f3a9bca494f0cb300411f20354e7dbc862aeb7968cfd6b72417236bf331b877b6b654d993b3f992001041f65ee4e96e5aac4fe6b335c326ffc5d42da302ced52e99c76a7fcd83350094bc3345810a585c9a2f211900bad867d75b50157a230e059923b9d783cc5d00965bfaeca727fae40e4a745cee028e5d97880a602039d21b4ff2ecb5695d4f00c911bc8f0849cf036d858b4951d36a0c42056d9d833ca90a2fa6156371f0ae00770d3f0b0e96f7cf2c0d628681bbbd01f48a52614389036492e83f72943daa00f82165b9002caa80a4ab154b4dbca82508330a1b8b221f9e813bd507816a1d00e24692b8a4dff4b4606ac4ce267d74b23cd78af0bff4558c1f6fa686a2800b00efe4f15e143f428ca9c3c9d15b7a1d403621a610417e51cb21e943ab284a39007d672aeb55384e794c3a2c8c6172dfffa3dcff25e1574deeaa860f5c2e18fa007629c2343734d892278ec63b6aeb6e9177a544145b629a1fce7f480b80de09003ab7784c257fe528ecf034bec360a4fd18c45f3f25c0addb289af78076f9ec009d225311ad961b65a1a417856f00539aa0ddc86a1b8a95342c4cb14741860900058a8bfc49944ebff5b8fe0cef7a17fcdd9dabbf21ec1f11cc741a5093e4ff00601645e92fc03e37c2a69e9cf6e73d1b2b01152f7e01df6706f50cd62ad4cd00b0a67004135d3bcd4a417473d30cd143f9d14d94b4bfb165c5babf3e1a76da001fb2e39b14697b272d102b65992957cb31a7abd4afb1f4d56e583044f701ce00cfbf1b07f029af4c172c1a918e1a3498439a9b8c353ee9870d60eedbff38df001b54c69f689563af3dc7500130ce559cc0b494d6b491c3f4c0367fdf02b7a500a61f8cd88092c33ce6d626f231230cc916f9a94edcf043a8a11f694406f6700069ee5e5b31296272c3fa9a88ff1dec32d272e83cde9a868c1bae02ed7fe8ff007d602dbd9629b1db2b2e215809de00257ab4799c0c6f63e1120b4f4589f3c600d1b2779912eaeb615c247d3c17b37baef720d1c76bade1a833cbe9d8667f0f00c93fd680a4bc307de57a954233ecb68916f8c3d310994bb69cd35bd50a90fb00cd515257491ae9f14ea3dbce983d2242ee7c6e10e106dd6839b20c48eadd22005afa9b88a218aff18367dd9df06338d5e8bd4ea69bce25764087a34d2039670066c9099b7975fecf77648e85c4260580c16c9df1bdf7f7806efd292069dea900195835efe16b97e94e3d7452e6a35df5ae0316b83d8f164d6af0dde7b4438a00fc7437d50f4f054866794dafe6e6090769207e7b9b4818405e27700228d8bd00fd8f092b0093c03b349c47356923fb501c7138e1a634bdf45df2063e314a42007f175d99a57dc6e1efdc9ccfdd9d067442d8c3b78fa9bc3b6d3c626ec7f52400ae4874840f59b21b0c04966f62b1c70ca2662139e072151a67cab4377ddb33001dd2da7278554037fcd0af743bf0bf1958da6781cf4f8e2b91cc0c76aae6af0078411632fdc7634d12dffe41e8c311022045ed138c8312113ff5034b1de4f80030e40fb8846689b618c2e439deb63586bf7985f1fa196064416ef4dc07945400f8014ce90e1acea10527469ad77e81bdff873946709ffe037932ed10df058c000b6bbceb5db9f572f842fda39b1cacedf01be942362b76c9a42746f2e5fa19003a925dfce8fdabf1ce00ea731a99676c734c1515931a542084f45db60a338e00c69b82b33654dd6ff2d201ba2411f383d4a15fb8f4d177c1e29fee553cdf69007af907a60cde05e2f95035a3c7ae12fb44632f09e2001183850516b1f4896400d10ea2d007e3c8731e5fd8b3ba60ee5668b44489d40d03614213526d7df7af00a8989376003926173e46673dd037dc77ba215a36e652457f332a12e9d7576f0000ddd49f10b1e6035094ac5c3a01cf968f3bdedfdcef0db698a2c4b6b30dab00e6163921bf6ad8e62f13a8db474eb639fb56abc6b0fa27d655208b80b2a152007cf777fa6550f4be09d35f2c134120b0a48ec21550d94c62dde96585fa7b1f003e63b87d069d32f2cbfe165aae7c34f887ba5f1a8269d5ffae9a98ee14a927007d2f0b5cd0ef10e86648b2bdf25e3e03c9065fb63ca1be59c17f4a5c9bd4bc006c6b55ab7ad20df1c06cebf7a14ea90e88acc96b927a83b5a7837e4e0bf058006eda8f05cf136750740ec05741dec6446da564d3b3653e1cb02cd2bbb5ff87003bec543097023195c3df9e69a768af86611a2635d51e3d6e139fe4741b52c40027cee01f833441967b799a4c73f944b9af4ab390cb49616b40908a0782f2cb00148f7f2edade44b096f45098391fd5b83db8adde6cb1d2d68a816e18331bab00788b1ea3c79d21325cd8fb40f89a3effd6fcf8a8f2c2c78cb9147637c9453f00255961094066dab7ae4ffd464850b0ce52914df9f7b9fad3e940d3ee0d86a400f99207e3ff23d7e6389996cdcde87727bd37da8f2ddd0c21a6e53007628e4b00b74947317f81efb46bc8ffe06005b2dc11003da8bfb4a8ea7689ab59d26039000f3c994bcd10823efbacd1e26fe99296264d2c5388e8e3e38198197393ea61009c5f4d52cf29751d5201f42baeb7a031112f0c945d25278e5e914eff0864cf00011c041950f625bbe856397820e5b5a7a1e8a6143c38f07e3faf1f6fa49acc00b1444c0470721c442caff87bdba23d3b03b089505d2383de7d9da02ec8260800c9f3855024a76eff4dfd3b0150ab5e2a4514d7714554cbbcd8e74be05ba9f4005837915b7153e321ea5e1a6ca17f30c9bf214a1078def19926aba1eb65e0220044d54282fb3ba6c8f9f340566a37f269430f20b6f358ddb4f5af30e9e5d54700baf5d256ed7f1c48ed586e33589f235ec6cb75264945bbd6fe3151fec5d41100febe4d59e611e4c15dc9bb3d64ca539188bd22edeadec6425e4ebbcf820204007f190cec4cb9776a5ed4a2a9a8f2e4111cba11d4aad007418a2fc8a895592b00bef320a86799e240793f116c316f20fae4287228d177b2217e200f15ffb020001a42386b4b17402380641e83079ca1721e7f1f438fc354cf12e0fc3ef975b9006af7215c23c0ea3384bf99d1e8fbd90ee6519fe93b385829f98ce0258e5eaf001b0d42e565716e1c62723ae7cfca04b4ccc92ea7d8188e903e864dc8c64ca000c81224a649eda99a0d6eb28d6649cbff37b3313729290f3fa031da7b4c6cd100342460fa42af224cefc6ca389a7d15c28848a44aa03cb55e03b8e3f16883c700be6e0688575ffc2099ef4e39a0ec7e79ff81f2323f3083069548fc60f2825e0070c793598e9fe72d28fbb529f6b90185466fa33d068d7892befed02746a7120090a8bf3adb407558edac1e1e89dfd7a9a1f3fb407324d4b7dd8d737d4b80f800df4e92f0b5117e262e7e7057014992f3e7c3521498291395299ff46a524a7c00caeea419f47f70a6e0d029c0d2d76138b9d5d8c3d8625bff79e20889b81d2d00677fdec214213b894b9f0b94495ef1eff6dddb30ff8d85beb21676adf6e93300fe1deb0c8caaa3637d01c0d42c653d20c012befbe7a232af68ad72fdb0000b0002acc05980ea667f40784b19d0b86331f6a507b9da419ff23451a349e374a2006544839b571eb8bf9057865fcb4b5587b3b8d3741b8ca2e76d295601db5dab009b311b7395a41867ef32cde3c58b4c8188f94cbfc1c6d63f09c0479606dfb9008f599fe4ae4340a0e344d0cf747d877ad6caba7f632f1fa790fc78dfb8642500e2ff5ef698e047a23899aa5e2318ad1f90d94387bb95272649b332bda5efaa003cae97a57b393d0044c733a89b9853811d32ec5dccc69d45ecb06b20ace20900521e90c16b0bb0532d27c254782b6045391b9cd0abdbe33a5d6b687520b89f00d2a1c7a89451abae7f807caf4312bf805109603b2b7f6dd3cd419bd453d81100f3064ab01c72949fb4b7df1c42131db5cd0bd2f36f9256fa59308f2c5e2d8e00ff2487d83b6f258662bb3af1ab59d60914209112371b776b35df2b2774be900001ba879fd3e2f2e42d188dda8e9a2d4b786fb4c8a15dca15a261ff373030e40069e12390a98f3b0466986299e86a20e5d64f40a8a845fd7a394a29b148c5fc00e656b98058ed3f60483d460db6ce163f448856f22fe9bb4bb1964822fd4d81003a4ede14b03d9f363ebd1b33d3e11797424fa1b4185c593efc4de8b54a072a008adf64ba17ae61f77bb3d7854842ec0ab0d44feb4b8714acd89f495977502200af97ce6a2f8650d73a95f37032aacf163e214c45bef640c0df7a502b6759f200d96bce69b9fcdf0645fd192c6eaa56c3bb4ee42db9dfcea794f58030ad2bee004473f54b7b60b110b1e6b0ecfd08d4ec844c69d50d43b2b7301e4b36618ac500595ea547903927e0adb0fae1af4b7f10a8879a566d2533aabb8a503ec8d3e100dfaf37e19900cdf028be8b40a06e43d825ba2bbcc22188471157273c6991b700342296adea4d4c0ff1663ed23eb54302c67633f581fee44d2dd7459852be3300f43a32948c0eb05d9170d34b3a2c8035c1c87f09d24ee78c468d808f7956160094d9817e475f1a90cd7692ad2720efbe4e22fb38264fcb04ad9b772086ddd9008e046257f10acf32450da6e44582fcd543d5765b7671cc74339e09089dd17e00cdf27e7650ef35687556fb3f099befed80975eb658c4caf293ce12e47aba2c00ac6f60ee17288b2fea2d2dbd0622f451119b2409138bcefd047fbebcf3e76500b368b57bb1cc9c979f0ef598cc9b6486806170510a7798b45fbc1a106edce200adad6cc7a3385cadb5ebea33dc821969392cd17a156657e7a919513d2b53490085bd5ac4408c31c4093d93023205f5b2dddf0c9cd9e873ac523f8dc20c7f120055e8374d5a6fb8599dd5aa026141492351838bfbeecfa4e3970968bc5e83b5007a1045a56565a35827102d29314116de6ace448351f410c3d5b147ca091b4400cd2f675fd60770ac3ce55e5dd776c7c94c9f3ded0c7236026e3f04420be3b800cbeb1f7a89fdfd8e7e7d8ddbd623224d391be63d8c056134d1311cea24142800e6d9f20d48e9347f866cccb8e46a3b878fdc1bbd56062cbee6f2fb4dbc26c600320a8e01f06d0cb9dab12a15cf9550a8496e590b4bbb98859cc53d29058a9d00c15ff55656bb8dadfe1cd329db8f2c6740d929f4a084c32fcb8751cfee1e74008ca391d9b7735681eccb60aa13b11b70352b7c05bbb6e5da32e62e149da7cb00f90054886c5f5110e66e5e341ab450889f297388b9fe90da578c3817931e5c0081427f081dd1240bbc9d7a7dc15afb2731c9e531bbbc8af2ef2b182f29736100ca0b56eec82a0480347109e64ed6a040a8e0d8d6925613b534fc181a063487000d7c6d7753b827e0110eb30fd7c7af7c03291405f00a0b14970ee300be5bca002b8b39a4cd6c21335bdfaa250690dc07b258b80ff98bb9ddd0af1f0970244c00859f6c332cf9fe3f42df05072a7a755494149bfcdcaa4bb50d47c9b77019ee00cea2da196a6704650027d29f5f8ad20aa90f9f01d262eeaa50db22595e4747003feff4447719120bbd09abfed10eff49b362385c05f420119740440ee5e1d5001bab7f9fdd6ab034c53e32625b24b129c745f256c4481f795d0f0da2909e6b000378bfb175da91eef66405e243e473ebbff5fb35934c787b3396192512a44a009748f822200709f69ad95beae74341fd883db4ec5744a312d0c67a1750fdd5007bd54ec825968ab48489133c521e4e12172456cdb4c6717a3ec55134c6241300a38b64c6df903b75a6be9fd3a8e754ffc2748f690b2e9fca1402b2d53d4f8200981059fd09b8716b425d71971217b285c4e3d95fc80b1eda5ae37cc624387900015cd1573c547a734291be9de239888eb40e51b6b42f243135c4dde85c39b20055dd82471f016604ddb60e64419e116b0c32d139a1319cffae3ba68d04c5b90039bfe6434677796f9fbc3da32add9dd5c35d943ea54aa16e460a92e36dbe5100eb236f1a8b034b8de08fbf708519d5d3507c9b675a69defaa94000bf598b94007dbd1e23e0c65012afee4b17cdd9fe7414b207b56761ad0ee19b3cd6e65ce8008ff1abaefcd66ba599dc494aa4e72a3ad8f1637e71b6dce69bd3ab1653d05900aa6f0fede94dd9bfe6350b83e6c13fc0a6bba0ed8a547b2814ce688c64e82000ce3add8a3bd4c42e37812810f19ef6b2f25c402707f7c94213fa9414ec3d420067ef4fb8172de5631aff113708222229a9c8d10cbe0beaa1c539920096b77100f06c86b50b50d668dd03dcd783747d890e8a229e2fecb20327a683239a7b7800c241f98e61137e305bfc91ee156ed313e688c95deabcfcd47ee3e8c5c81d6e001895018d90ca65654499005fe8085cddef4ece8c477356bca412f02aba598d00ea07ae544affe0aa127303bc02b7ef84d311d67a170b694fbf9553950d6f970009b4e2fb59c923dc71bbb0fa777db6156e01eebaa6f3dda3b1b6e0ba0b542300d09af8fbc4cb7f949ac6558cbc8cd9c988de22ed6430b76003cdac461f4cef00f963adeaf1f70503a560bfc01e2eaeb7daff25e6d755c0435b63b7893f1b000035800086ab8f1720c149ade87616e87627cbc13425faa74b676241532fcbd400dc8600275f23b28ab481a76fb3c7f71ed0cf6dce2bf16816f15c21b2c5e808009f118d75565f5dbdc0c8f201ec013beb684c7f3cea56cdafe5435221cfe44100a6ae7ecfcdbfd98afb54f4cdbf0833d6de70257f25f44302664076dfc7f3c60014e08edde39f53b35e83274eefc5fccb968d315f18c00d980def2817d2ccfe00a99a8f65cfd117d11ffb1d5d393d885da262a8dd1673796798d2315324d7630089cba0d89c00517d32c3dd9f0b5f3901bd19c7bbfce72ad3b57419d6a129d9001360ef029918e2d8c1c19c1d3559617af8751d36bde3d84c48d93ea39e242f007e896998c3cc30f490dc6941e6e58755e30b8eb648de99bf6cad0a646644cf00723eeee635cd782ef8015276a96ac5aedf4ef39d0f98930e14c86ebe1366f0008ab00885021d5b3a1a201286179c54bcfd5137d1bea806dc2139d38b2c96cb000fefcb6b9a1c477bf336504574bd4fbbcc4ac7e0a7e2005b4f84dd429524f70021ef44e5200d33546ecd7fcf1df23fc153cc394378f9a06e6e189ba33d6ef400dbc17f95046a25b8b214fdb3070e0187c41b988ce0159b83f13356e12915fe000289400c40527ded50725d46b792a8e619f63f853cca08fc77ef29420d907f006ab992d9a16421c4213e445badbf166af75ff89d4f84575f8f66426c92e40c00524a38b53b9402feaa3752f20ee9b9bc86f96fa4039ebd7de22a8873ef76fa001fa317d88773c88aad31339dbda78aa7534f0e60a9e22409ff19f60eb57dc900214879677a1a1be9d789f341d8d9f503c9f053facd2ecfe5a721125af78cdc0000405f17da0373aff1777845fdde53e181f1f59433e658fcf0e50945474d98003f86b725d46f84c08209268c0e5d35929f405fc39568b8d3f5722efb7fed8600cf1ec4258c18f93fb952832f17021c085597c022a6f7c7f69d3b0c5ae7c1a100e091264c63eb4b43f9b264c5359e86f927e3433646cba8e1d2aa8afa49d3d400086b6edb61f2533909452431d9bf319ce4e13df240e08e644a942533653ea600b6a9aac782deeaa57643758751113b5a8adfcffa59e347a22f4e7d4d1c6bd1003b59830714141a55f64a7413a961b6d854db34b0bdbd34c28205607846d12c00177caffcf14c7dd009c7a144bb392ebed8fb74821412f024b618beb09bce4c005af8039f2dfd42358b833636e6f7ac8ce78b9b2f869f0ce61bbaee7912310d00906ff600cabcdb29f6ed06ed4a4256dbed13a607b28a6f8796f0e48f645c2d0084727aec5184898018a5f79a984727e4a893b51a47d6c8ff9aef655ec8ef6000d3a1abb223312bf58545e9b20b0ba880d6c16b8e2f38adf40b199c25058586000c76b399906d5f56423a9eb5d1ab4fb6c3ed1b7d321be691bae2677b0e77e300cd22e4971a375569ac56cf5a1b28d08051fe835c9645dafe262ce201847f4d00999eaa97e6074913a0987d7273b380a1e7b6a2f296cd4f2c34884aca3a4998000886ed086dfbc096450534c7bf94f709d210d18e52b63e7dcf59a42392a8ce00da58c95c54256501e535969c0367bb8a79583486cfac3a7fe928fbb4d9bd5c007e56e496c611a5d1a6574a7c69bca1552f7e81732e498906b563b2697db6fd00669ee8236d214b4525d9f17510ffc275ab607127d107f4f2ebba3051fe5dbf0025cc222ecac370400d11edf5c9c24f21bdc43934551bbc93a3d65b1b37ca0200368b6ec37e0cbf0eb64ad5be9e63643a03f3de56a25a5e22f6dfee144639a400595d9b65eb491c1113bdb11ed89f4c6fb80ea8aaa75ba2ff08fd2542dbd904001dd106cb89d10390a3d1ac6ace3d0bd06408e1306f5d2ae3f6191bbb966b4300052fce527f6b233086a0feace9cbd586a1603e01cad3fba7cef790a586fdc900481fd8ada5daa1ece8efd39cedf86ae19f5192545001f0386f26d3371c233600a707bc2eea1e81ab66f6b8c9adbba04a16e5bdc1ab8fba98b4e4e402285c5d007ad6f05a149ffb8023440596b2e83282ab18dad7ceee7c1d57501a095a8d11006480da29f356decbe2a5866d9c773c6b1c3e46c4313382b0366b3d681cb3370043624dbeb484cf30ccc4777e071fa9446702c52a019d345e7e43bd0d2eb19d00e400c330cde6eb8f550a8cf415c0b6d805b6ed4fa50c4e81b6593241c6786c0031d93b2d74c8a273ad0a235d04973c611a84ac1c797a5c2d32cad0c6a14baa0043868b4be0ae13fbcbab77f75d95598526fbfe1dae2cbd02548acbf2ee3cde0047673f890520a3c61322158eed796d040c67dee6c203f5a2afcf24adc6f93f00d3bcf6df56850f9b23f8e6c9cde8bd6c757d2b896e5a87e3f66f080eaf3eb700b6699adbb8a16cce08ee581945bd77fde83c5f45eb970810b5dd2e94caff18007257a28f14de7f5c19151014c330bfd4afdced7a66ab6cb2befc792769b993007ae513fa9051f809055432698bdd83ffdff46914990ad3f9c47f81fa835dcc00c99dfbea5f0408636cb4ea521460772856e20cdc30d8d954d1fcd79982e74800a095d6a2751c706841044e7e82167b5a47e6cbc3fd479cffb3acb60e93f0d000bbec72bbfeb3bbf8d6eebd40670fc7570db0eb152f0448428bfd55b68dbafa00b6707865d8fb9455b62fa3801efc450a12da03dec3db83fe39e5cbe9e622af00fdaf3292dbb7e1335ed7f43dafd3f89e02e43aa6b45136a42be49bf265eaab009f58c2352e2e23692f0ed55cebc735b9ff60fed72fee8fdd975c662cd470e400a2c2c01c95120fcf14a173b29ab42ad17b6c3b7d748bfd33974ee8ce3a52c500a6dfb43e3a83b0f925eded6015152a97660b7883fc6fcb2cc02fe0d4d4663800a926246eb2cf6d58384a5443dbf990e1cbf215efbb032fe4876372789447150013db889b7f70611533cbe07475488ab0dfc196f5b2df7d8e2c4566327f798500006c18120b6f9aed13ab2b3046de9534d11d08d342632e0374d5b1c82b06f0006ed6efafff6d39a705f05f94611572c2ad0d0e389b9190938daa321159e789009ca6779e1df3f41e758c7500fae877907a35729b32375f2ee10be1b0f0cb4500c8e9129ff110603effc84d5c26483234cb648a09fe65b3c59116eb5d1413b80040f23b9e0009ef9aa0be62e6fda8b6e43f5afed9cff50079bfd7c33f624885000f6bcc778eb1313b36c51c4528dcec7b7f8fec5a182a587d92348b6c988b13007a8f9c7ab1bec2aa716b3cd6dd92dc58761aefc22430eea67e77416d2a31c500f312002f9df8763bb4f1f093be8c6bfabdc7d8b294897965a3248425ce681800640955806636f06edb8bd75d0166f995271fb9fdc1724a727cdd842f4ec4c50018abd61b6d5ed6bbb594484a6e5e5fe8018f551fe037f80a9661c1aff3486800739cc0ddad8e05e7a745dfa3ae6f2a8b502aa6129ddece1b8859d136c1afb700aaf4307bfb5ea7d9d4ee8630c06df91a82c0bd26c290227e997698321c7f030038619d439b7d6507c07320f5b3255b93f57289e9643a457ce24dbe21a83a3b00e8d024690952231e26f81561ff20b69a7fd0718d2cc649b9e8c54f2bf1c9da00e621fb0c2c18bc2ea8e85e0135b4bff92dca70f075fb7077294ba5e13a5e4b00deb012a3c6f4b7e430e318211d12a4816eb478cfdcf0abb17b12982c0f9c1600aa9161af5fff94e03613dd5ea9d6a9ba886965b84fec5e00b2813ea598f72b00a9c8bb6966e32455b6ff7b8ff8afa566e405e88458ea3a18d948d2127791c8003034407a3297f988d5c945cc94ccdf81eb4d9b77f5e229501e6e4cb810a6cf00d1d5413f80c7be2abe436e725fffe183d254a1be56a8fe59b89080a5a7a39900eaf37600c28c3061de3a4cf92c8324be041cc1fe0d89296adb2ccaada5afc300de8dbbe4c52fc5db3b6cf54ef5031ccb2625dcf9ad37ecb0ba8c6e39096f6a00d2021a34c50acacf7ddab0a15ba9dac52ab43f72c1490f862d1c3b162108a300d2a23be1ac45f180ee40220a264b1876417c0faa89035b246005d7777fddba0054bdd806299a2e94f0ded543377032b0323df85894517c193cb1cc8238a9010066a068eb2511fd1be24ce8d9fbfc8dd5184f344b6da1ebac4a85ab9ae4e6af005e9e7aad03b8039a236a17249a1a5ef7f0829e2b8176e28a1efc33eb900bef005e0909910578cd16f891fa6d5f6f2e02b82c9a75f09267b621e0f96b84f12f0085a3dd60cc2de51b13a73f8553fcb253b921ed0355d3cd740affc9a0f1f6020089d67243f0c5486e23ae2a4612e75a1156141ead0db8a8a07e369ce0125fbf00e48a1cf57031103b658f214f557489afb3535ed9cf6b4fe0faedc3346cfbdf008f5eaf9a40d238c18fba7f9508a5eb6aa73a37210abe1c4a437c898667f9940062534d26fd3615a179d9d692567565e7c14b036f145b7224672f15f3dbc9790078c043b868176b5adf317f9fd112613fb8018e69b6cb85d94e2b4454bba01e00450e2fc4f33b0334050d7934b4f60a627a29f37e923e08795f54c0ceba0d6c003218a5fc3b89367d9321f3c5a4c92744bcd571c846d52fa30422d7a2b54cbe0046d70872bb0073854ebd1c5e57ffebe26bf12fdf3e3b6206c8adee3f503959009584612b4e7a3fe91ba397880c10346a5fcb193304d76aa41fa9dd176bb12f00dff59a16f7bf3afc3f6def0ca047e04d6ca74ed3e69d3281955690b5177263002f3366a792ffd6957091b4c3f5bbbd31b6f881a91f56ee9e490980d75b3a23001f63914a5f001047fe0b2df1516953ff42dd0a8fa8c13f4504c405af52c59700852324d47e4b771620362117646267d0d0063d1d839b42957ac38c7ccf8a6200da1ee7f34b6bce409d53596afd1deb0efc27af854edc0472660e6c0125c76a00d50de1f67ce9aa8ea5502db91960bf3ae1d45e01a8abb17d3e7edabc1830f700e6f98bcb89d270b764c1f28d127bab05e57fa739ada335668ea1e757a5257e00107b85159cc0ba9e36c9f3db96cae6a2b3e9e468b341d0d5ce76642ea091ca000cba6dafe9f60b30a11548b1266bed90e20d62fc4356939184ecab24d569ac008293214ce6a9a7946e02b11e4960ddf9214bebffd0517f6f6b7c6fffc9516600bb4fec18e62efe0b886ecce605d51d1ad4eb10779ebaed18b44aa808717276002a338c52c2c9a4f99bf01072de0dd3a4765647db4504a7ea6b37618a3516b6002996b669b901a0c6f942b1f44d8d17861a0f0cc51a385df532bcb3c605d3d200c55ccefa6d00b39b21e36a3ef6f616090c71b4556387a19570bfd42722d4f80061c8a721e43310f25908f9bc847c0e423e15294d184e12f2c909f98c847c3e00423e29219fa2d07220f043f481028017d83b869582f477f7cc13871a2dae070037aae8fc918a0a064835e5246cee28a0bb67ced649173c7f009af7efb1f2ed00237061f35fbb9195f69e42b48718a300285760f3f39ccbe645481bad1620ae0083fff73e50b13ba7d04d678056ab9b524ff492a773c953bda6f1b71a96fd150029e2537cc8907642247705aabee06f342a13fa786d13065d33725b7d037d7e000f112676e48a061abb9866fef7e984d0a5e4b9b8fca83c7abc3321e37bf1d5003bc2b4b0aad2aefc7285dc97e0ebc645f6d38be53c4235ce227f656fdb428200100896498951e7e2c10037d7dfb7fd8fa6915db978c9ada58655fd9d9a7cce00340ade41512f7ef04333f77c6962ec86a5f9b42eeab995777a6bdfb6ef32e10014437f7544c14ab47d9f8c528b9f10be71c0c8cfb65fa393b6e106a8b214e800f7d76b605d4ad1249fe071cb15287ed55cba970f66e7a052de47a715dc805300341f41533d01ff20a8d4acbed99273c9d802392b6e2a1b6cf7337e411c0eb4003eea54809e0d007199ae9dd6e8eaacdcd0e9ff6fce5799157cbd9e535e8c920078d3969d033319cd555bc4cc2be4fd864dbfc4d889b2d10b32d5a7a5cb8f100059764997132ff14f576ec75f4fc08a07a461047eadb86bc1cc396244138577008473688fcc576b60a17c6eb2eea2cd6618d171f0e324ea8f6f727433e0ec2f00d372494a798dd70b5d7d4bf4b0c0e1d6367d8cfe512f0fcfcd932919f257830000889ce9fa96a25f2faece9ce23773ed95ffc5578c3c554e1c83df22a64f1e00dd180b622b1b080d3140c5cb8bb1da025f23d2fa246445f9cf8e3026c051f800e63dfbf6e12302dfadeaa4c61d1e0bfbb3002978be894ff5fc5d9b877bcd3c006df27284c5c7ff9fbcbc066292fffde11ac1ef59296e298c5f6b87daed2d3a00a6c35fc07292a46660d101daa590c0a59978c520ceae768cd1b38c30fa7a3900624b1bd79e1f5abf31f07e852ad3c91826d52389b0764655f77d079ac5a09b00f7ca852de603824e0b48604e8407b64972ddb0018d4b655ffe605cfc6adc1f0007b09a486508d2c50576f51ebb9c3947f1e9a0871c1b6accbc41cf34c13d050003b6421405e7890ea3f03fbf51f47a5092b05cdb926e5930e3cbb12f00e135001405f48f29b3030677c3bf4bc7f8a06f3cc70e0c129e0687dfc6102768cbc3006b9a39819e2c67a9f9be3037bcd6b8427bd69ece6a75014302acb1d0e1a99d00096f0221e83f8080b3d77046625d9984edf0fbe3650ebd31d27c7afc39d78100e0b1b507eb15c2fa858e662ee8cbef840adf7f7a5f885ac4c0362120e293c200bac22fb48522f8c51828b6a075b15bb87001e35114045b2b636981d1b763830064f0847d54cc4f396f960e096b2de575736d4e07e6dc942e8da48909525cf1007abc72cfdb70faa8248502473a63e062549adc0859bac98d168136858a026300824040c1f3f265de2951383ffb3f01c4af4b71e586e55983d6a93479d30e8a0068b4a7c0d03b99a9879ee8bff590171f24f3491c43e108700afa357977bc3e00cf81bf9017d5286e6bae3000b732e8cdc1d060c6e01784f6afd8eb591982fb001d32c92104b78cbf36bf2ed00ef4ca98198f1e0d7fc9750e9a684f2ee67f5a001884701ca758ae54bbb110fdb9fb436c37fdf5b68009f4001c91cbf7c5dd150022880b76812e3bfdd4fa7f2dfdc4a814c30c917e3786de9fcdbc444f898f3b00c5929aef6033f283e0cd56a4b689e5d947cfb5054334f0b29e53f11808405f00990bbcae4a040f20b7165cb71d2b371ce266ef8ad9bf79a3303e5afdd382f8000ae8a4e4fc38e05f9f20e5a28f2aabe44be3ef991505636696f8849ec462ac00fc676d91f8ab54bf949d9201a833ccb145578e3580e7a03e9b5db299c6964d00ccfc510d7ccec5fc8b5889cbc89c1934be81c0b5549d35e9bf470787a165fc0045cbd1ee2012b746b160292abbb8d5a52032d88519be4100d23df06cdc061500a7cd725aab800813a1bd9f6d068ba428d50226d8f31e990b55bc1ceee96f2a009e08ff743bd641e5f4ba82bc8b4abe876a7320e7cd50244452a57399b239d900cfb0d68994d6b0d1e7bd2ad83a8a33d4f9fd0cd6cb3abd58d52a8794775a2e00793bf3bb4c8d2935d75a3877a9b2f843f6a82ddaa2baffa2ff5c1241a8fc73000cd8d297b0291486d94e8229e12e12c5121cff35e0f0736f811168d06cbb8c00658e37ea12a1c9155a37cc49f1e928643811810062576c25413bbf31ba0af900d0fe9ffed0f96f3b81269afaea97375c03995060fbd3da711015cf322f70fe00e49eceede7af13dcbe14798cfafb34001ff6f27fba3bb323278f9865be6f9b00d28a5c0dcf31f4ec000b0ddcc28d33f4f80dfef7009806eb4d7a183457f99200540a4b6e33de56022898a22273f70267920b8d2a8518485237a6523526f8a500d5167d5c397f537578864e3f794284ca3fd23e08900c232319221f0e4440390000a8edc3f874f245a259833941c6d0a15c2fff24b0ba46542d856cc74eba32008ffc48d2c0aa7d2e4ff003a8b45dfd1bfb2b7bb74054ab20a1ae305a1f29fd00a73ccb53541c630b52c13460aab7eaf8847779847f77c0f9d02bebb9073eff00ae2084b43083d41c69752cae4a98c827fd8ee55ff8c0e7933a53e4cc6eda4a00919ef20f422a5178aba384d00aec95689570e02f65001df1b4a9d05834120d005a9e4d10bdc26dcfd4a45de1757de262fa1b1c0b719c69172dc1cf912a89f300d9b48ac43e9abe92aba8dbe5bce1cb6c5f4f9e3456bf6565f77f3f0400334000b9f8aab3b9fb1116a76ffae99491233515fc3ef7c02ead5a3d2a01a5ef25c900d8f6e4cb429277cbd94eb31cd049b8b7c3bb52e31e0bec04713b984a62623900ff5ecd3b1e7ffdb70538be75a1f4709090ef7454ca8dcfa447bf6366b55147004cad563b97d288b0402be3e4ba630793ead3cac8a79c5aeddf957dba37b1d60075c0975a41f3eb7aea5f76aec512f780818104c824b8adfc6767834e341b5a008e3814ed9cbb04d614799d48c02554635020c9348bcddda4cda2d597856cb700439fb91f5b7b7a31dbc0b73b918fcaa925a738bed9cfeac3e3be5b0d456204009891fb62eea0ad913148ca6791c1b3ef7cae0f93cd7b23497a658b651f5b150092fae0a9ffd7d7879e7d700969fe2650f186375f829ea262da836377d0332800e2e3840569bd0d53972c80fbe556b7ce82eb23bf98e7db5b45cf7efe12b5fd00835646735fe7dd095cc01f731bd3cd04e9c7b87d7ab4a2d7ade60eb4f5722f000b83a263fb870f5b9047d9cbb59a9ae2af7f9ec435000ce0bf68dcde14228700d4518454c29252f9c806839881beae3fd2e1aac79211e2fb56dce3b634d8020024f58c7ab09525e456377f2fd3df4cfc04159b78ba550b599f7c1a048e6266002c376902664e7aec96be3f4bcc50da6d92b6a8a92598c8dd63f30a3c65a92b005bee5579dedf1f7312b26f53a4dca25ccd14eeda4464a799d5572bc2f0335900564cbeb5f326032a52f7f22ecfc8b84340523f58fb7dc7c9f77284c484bebf005b24ff06fd7fca89ff15cde979a21abb91e5db226697897b80252aba0208fc0037c4f7b4e72d2de16b8f4a3269afe24c6f8c0a3f0863a675113cf2865c435b008501462716602c778dec2a2b1ee35656d8277968baa1a539e8ef707f5863d900a8fc240933347c5890f69329dcc8335988d6aadf2b7f7df6603b451bb301d3007829c8467f3a4a1dae66a304d4f8acdb780772834ffcc2f752b8d9e9f0096e00fecd67f6ffd27cb656d66877e6f0bbd3c188d34294acfd45c9a660897af714007fd968e4f3b37a99b96dc427ab3bee70e76df00f91e5360f6c6c03dd8b5ec1004284a1c76cce5dfb970f6b819cbe54391e6cc59a08c9d8d4d3a2a5e176c4be00f7ba641918e04f06f599851324806398ca134d61815c2754542a0990cd1d1a00ec3ba68ab4611eb9cbcc1adaa73f5aa613393189aea5882b459cd21572203e00525252506d9bf5785b9ae985770b08de5ef19428a335d39668983bcc3e2b5900518e6fa32df47626b00f9c2c2e9209f48e7b1e9160cc20be62bcd638cda65400dbe9a5453b85a2cb28439e0465a3a90672266adf92b80d2d2af52c55188ae300355865e89fcd223b867d2c3068c2ff66ffa65aab895a9af6931dd9ac505d5400f407c925d3392975494d3e34545eb19024287d88e3bc860bab044420683bc0003687c25a0862d97b2cb37f9667d3a45c1e7b6507d38afd815b19cffeb53f0600b6f6a5b1574d8c6a60c40f1c6b3920494da8374750b7ac064ea94e369d67ca0047e3b06a6072a1d1046f5eb6b5a0555de948f8dee26542bdce25ec6b2aba07009f515ffad441a0859b332603a3f79fc10942b680d39a03f568815ff147dca700de7eda6aac0652990715d0fb34270221dc6144128d76703908d4e0bdcd244700ee28c73019f909a9832ba6358fe988b289e29e530989513f75d7ba9826350400bf0bc0b7622ef8545af84b5b24d5cd3cc1add54d46e586d7f9e346ef2b27b100d992ac399d989901bfd5ffc2b93778dc9f740f9e06424e37029718579e4bef00ca82660b908c5fef4a9880b102c980cb6a33734e13d0e074a84468b026d6ad00d9ada934443f6c1b6992afcc34b7a1dbdfe19812097a2cf5bb3c96b579e7e400ee2d0e74ae4c411227977c4186cc3c93da4c1f3dfcdb48017aa65507f0ecdf009f528a2ba1cec51c89dabb29d0418468492e4fe4be9efb9cc926131f9c398900089c9b1e399da05ee15546865e8a061ac220da4592ba5d1da8d96b35f1ea86005231b979529ffd0af3fc2461abeb67845fa0c70253429101c53784770463f6005e96f28748436b397b3b8b98e3edec70271cc0a3bb57a766a51513faad5cb9004fb0d01e90ceee3f7c58aed978cee2384e1844e1f68ce6633c015ea891073600ae8feaa1896bc0dc8361e757fa0a258d307da158224cfcf5af176cfc240f6000a35c749a4b7eac1b30beae2cf4c01d17d99d1c952b212b45065039a447e49500abc265e6f59ef78b3f1a97403e08b776e4096a64c8e40d725616e99e55ec6000424d0524dac76691bf17c0befa5e94b08e61241a12ded6d6d628f6349494c7007d99b1e435557b5b0cbda627cc5887d14acbcf7714f0b1982ce457a733d87f0028b13b5da702b447f0ee98f9e5d817fa6468898a001224863b8b75cae9b4ec00fad2ec6e827ea1c9f3eeb4d2e7253638ed5da3eb2abfc9ca96c7531374453900a74c01822b976527ae0109c992641fd304848320e4705ae6bc0769804697df00e54595fbe2bef2c2824f30411241c0f859e00e1f5909844754a08d8b56fce400969f0f60279f28d0dfadb1fd75d989c44b780ccc1bcb1f73cce6c5784a4766003097d480e24371ddbb4ad36453b94449a753661c2ec587c5593fd61c943611003a5295c9f64d8c2bbf713fff7daccd22b445473a77d63d18983b7ec88b442b003519a9c671937cd3d90300b6a380e77112f307e335de164a70391cc6ad44a600e267e5a0cc7c885832d58b86a994596f4fc331dfddf8c79165897e2b7caa7600de1595417fd7fafcda86f01c983103b5281d6e35b1da80018844d6e1e8b21b0072a4f4a45701e3768f1bb941393dd75312f1b488b48d034e79a6c1b2fd590e00c4f80e9be0d728933fa7aeb478121aa21ebe392442ea53a83818bf8bcd15c300a5de7437fe5802f8cccbdcecd78845bdf07568ba988e127277d1b714c5b1fd00b7b88579d5eaabfe10a6b1639ca4b50fdb1f865f2ba12801256882350556ca0026998a5103ac36d6513b1a6b925b11a6cc009f52d0e17ae9c996c69f0c9cd700f59d33649bcaf7d63038b2af0ebb7edbbb83844f319c1c8a5075bcac3f6b9100c627231ebcc2485a58382982f404266c315fee09febf39d9c87d7eee8f094f00b3a2a62f52ad555de1270b7692c86f9ad7f88759f15be3ba40e345f026ea940029a40baab92957460722087096d0d3fc00ff645efa931c768eb2b14021381f0047a1cebbe6cd5b5f9f5280e4439852212de166c739dc6feeef3f3a09121f5400b9ff9e6643983e4d48e26eb8c6d12181b4effe9dd504c0131f2824a1f2d0ca00716973b127e29f0159c18effae57e5f58535daef5962332aff44d89949522300669b08a047392cecffb970ef89a1caab351efe43e7bf4b2ca66dd94ef8929a00f042ef470c98cb33dd1df93e58605a938739eebb0d0d4cbe8601035e8d8a96005c091b06ab78bc2b9ecf77bf2791117473233345b53c3b07e1924629ba46e900792494318ed27937f092fcab966e998b9b267de1fe969a305b5d3f23ed2be600bc142a932d8ba0c51f7b844b28e1ffcebfcfe992a876768053b62eead39c03003815ebd224130a04d9b17317bfe76d95bc1b6b58f8ed5a3d2f5a190804c64900432ed72415469dcd434f92e3db48829636edf5f8676a03e736fa5add293bd900d9217ce4a59bc61025fc3835cd216a7a43d4148c2861c8a9291951c2965342008b53d32022dfa691efd2a8167953c296fb7213fcf11d820924ae1c0805ae5500baafebf9a924afd0ac36c5314489d92f1c4131d60a00bedb555bbe68e5ce9f00cd902c55f737691013b8db9b337c7ffc77ed8c072229420913266ebe18ff410073cf3b963dd555f9f7bcb2a1fe1ebed4a9fa459609cbc5c6a8b5b68ff6c33100e07adeb5a76674fbe2e45c407529babb1d9fa43abbf17cd21b10632598fbf700458f308939dfd765d7a3ff5b0a0bdeece899c63fe773946e1f84b662649e7c0091934e97d9dee5bc0ead2a20408d3768ac53e40cca18932da01d5499ba887c0004b962dbd208f125fe63e1f2a8a3ec60560da517db47af9ecb043f6fb6c57500ef58492a73b95e9b8afdd3ecab9b2912de15c2dee5675f2b7f48393ba0b0f300d5f0d902eaafc4aa4fedf68b7cffd2f866f548c7f873ebaa63aabb458781240023f5671c38a9bcdfb1e94161dfbf1ffe4936f02446f49b8ee357b5d78b694300276cfdfad5440fa60d8035d359bd3ac0a048bd08eb2edbe347246e106c747a008ef2c35a1d7143d8db57dfaa66660f9bc38fa2b0e6b2f9bc9c7ccdcd71690f00a91b04bfc6bec83ba786bd6c8b18c8139ea9023436979a14ac7582fff9b6d2008274f340924baa7cc27b18d281f4648dd1c85c6191a4fded3c50b09c90cb5b00c2f9eb5d4ec351e0547759bdf4be182403cbb7138617e09aa9c2e7f219360e00786b1757aea09c5612b0a72cfd8d22bd2fda2f76d188c2484f3d697be7aaf900a1c9bc7537b7d1b3a5a697edff8e707a81532251ebdc6d32db8018f47ef7ae006a9014a334d64e660170f237fcc46893cd800a9c10a7d1782c6921fd76657c007bbde9dd658b6f884e2bf2c58d912e403fbfe39b8111502f5497f97df877c600a0c7669682e3c9d8035cc43d45957e3832ed1408127749a1d465ffe9fa93d20077d95198119707228369ae5c1607eb323ea99a58439260dccbf6cc09fe6c8200f426a2be8f80720352eeef58741eddf65625de24117427de3f066c78c31f0000bdedc2cb86b2a78bbf2835f9830c20663b7df21c630535436efe9bca073fe10091a924c80ff987a35f4ccbbfcfab088b77fd3407eb514cc69919f406fd59d700af3e33856af2619f4a0afeea0e008c4fe062cfc4647eee156de745bc169da9002d132a9e1c605ad690454f727368b03ba48fbd4f2ac5717a587db401f2b3e50078c833fb6c7350d47dce46de34c9732fa0de60b20d909544842f94c3fe473600763641a0d27a4386d0f0bc779080a1c513b6f3a61698dc398935e8c8ad1ec900573f85afbf826e73b90fe6c794fb9d58ca1713bc62fa41a359156dee7632060080e5d064010a2cbdf39939df250a41c0974fe89c6dcbe677a073e52934612800e25fc2a4a1a9380c3d7c058325ce6fff0d5d28e664f3a2e349419cf9083a1300f4b770282371084bcfdd010787ba40dc94e1220a3fdf658ac294d7bddfa62d003d8429a12e67f107429cac32eea87292051c25acba60275ab0f87b2286fccc00352ef1b7365d4d70cbdd0291fcad9580f10a932acd33003710f5ef3b0412b70003ada7fd6539655936954b1e33cede099f658efd5701d9443b7a77f6e839290035a809d2e0993e6d2e5d46d885a686bc937f0f7bbf54824ddd51866dd5f6be001c45d936435b00900bef41ff8306b749dbe3e240310ce24ef8b7a235b289db002c6623b46677f2e89124613e06bd50a826ad9763b03b3748dffb83fa4333480042b062e165e5c9e1c0e6f7adecda4d412d742240791a859c131872507ae3ed00a7953bdd48016354b9b17444e06e60f48afdab6ef23ddb93c770e9acf767ad005fdfbe9a717098a38e15284d75119a5ec9c549b575b3244cc912cb755fbd8f00ddc312525fa45aabbaa28784e204dd72ea7ccf885ee4c1cb5364cdd319f3ec00733af8977f7bd771d873bd3c806ef02f4805cecefd9608bf0c2b4b5106a4b80020cbb35f13d6e1aedd92fac4c7f669b507fa1e410cc4eccf9a94bf5d16e9a0006e0183978ae56c0193ecfb8ec559a7c20039b2a91bff1bb10a84f51190b04b0080efc58192c8f2406c17f879f97982aaefcc8f6dfee6b318b252d09f8ae55d00716de424c6b86f6e74e3265ba4e97d7249b2803d1ad6584ac235b086defcdf00be0262b7e772cccd93c988e7a1dae856b6ba7e46d113d14031b882bec6a73a0064fecab0e33ac8e142c448543f640b3f9aaeef37a9e10578b00a52f6b37070004c5cbb7d46747507acfe74e70d95aec4f6c8b3e6aff3bdef9d237cb0f724da00526f6ea4317afca579215c92ccc326ae201ccdcf8ca4d39b5d54224fa77b3a001cb97952e92b723add26b0a59c91f6332838628fb5577e43a3dc89c94afa7500d3c5cd5719c514c5e45b5ef611e689610c50669677c821e0b80ba8a2d05fff00c3e0e03b837a0b1dd0e7279bd88b9ac4a755fa14fd182edbe072d504cff21e00c6a3fdadb0e72a75766891a495aa88dc5d99d35a10d99072d223f2eb311a1c00cdcbb696b4aa25e88a4f8e043b6baadab0135c06e7189095be81d30967852c0086a0c7ddce11683e1e0b0590f682cbee7b09932849bacf1c2e3e6ebc05a3e200e05d30a995bffac71bd475f8340e9299a1e81170ff2aaa6dd75ba55af314a80030d097810ee5af6f75f536a1165975c2d1b8c1060c9147e7ff961f7f757a0c00b44d59d873e1fc121e5dd699349ab0614da89b4151e8a1d9cc5bf4b69af33f0074d41528bda48fe154e1dabfe438ea4715b8e92174dea412daf6bc7a04f805003334904c3dc13735e6bd8ccc71c593e9ea7f6142bcfef9098f90fc2da37c7000bef35cb8dfb6a9d327c409391bb405f97d9bb41131b5d7edbbc00d26bc5d7c0063a0dacfc2a858fae80e105fc81f97f79bcbe8e13ad0d596da4ce776c3b98700f809e2a7af31957854e0ddb094ca493aae8b7640e0dbe032286e677096e68800a145b4b12361b650d58c41d163bfec2acc843ea6f36900687e07e8d4d4c3c700b17032a42067ed5cc7859aa873bf855d21dc582f73177ff3af2c8fe1ca23fd00673dbd1a235c7b71ffd646d1ae277f526558c9c3c63b498f93ab3e8287fff4008dc4378724959e48b55675452f9600981592b9611fe1c53e992bbf00fd777600c516fd4b59d9796c26d3bb401f3aa0ac9230f2beaa5ec1187f9b3ecac7edac00e0ff6024259bca35a551c904ed75f9ba5809cd1f4f30f9e538f76fa6cd3f22007903a3aea9461d6c7a3c2caf248ab5f46f854ac488ae1b2501913eb815e97f00e04358a3d108a02a84bd88b14c66eb3002dd7f9cdcd9b42aea80a924d4ebe70087634cebf2079eb45f2bfae39ebd0a8a2ba9913d19bdee05a6add7cc8f438700efdc6857b9ab013c0f7e021c585e2d4b2d1a1287f359b2599830880ab2b47800eb6234cdedd04d22937569bec620a37446179fcb5eab476a4559fb26f7c25a00e1048f6732b53befa2ba62c9b153ffce5499f8019f9abba75c583d367f096a0012d9b849ded6e26dfeaf2a29893db1bf9f4775dad0c5ff45f7cbd2632fa499008198ac22425f7c27e5576f8ba1354e0c02d7dc6ea4f5d71f472cc02223483c00276706ab07a38ff88e423d9476eee4040f624a2d274d49b051d6283b8967c300a22a0f5c1736668bb7ca85d1e3efc7b14bd7af13f314ca6a5fc7b55aecec7c0028bfa94963140188fc08e2c8e6eb8e3b958d46afcc7c49b73cbab58bf8fd6200904272dd9b0ef32eed2c2f1d87e93c2a8cdc766dbc6295a10fa1777d05b6c400562fb028d94c6a559b88c87418e80b1606536009598d56bca47c47ca804a6600d3b277f44a0ddcb16a9bc489bdd6976d2d695557f8cfc3e78707e94b9cec4700bdce107309ad9b8ff2e9c145ff9e36add83ba8fbfc190658034733f949d82e008413e9d0977d3a8ff3b2757f71ba0d883ec7c550a0d177609224357846066d007e3099a3867a386592e36550222836211a5b47a64bf443e757e09ff96e39d8008ff3563bc0ddaf52f3e4777c7efe2a0e363a1f757451ea9ecad610fff1a5b600fb208eec1e7b2ff14e26805d11939c66eb1a8b250f879d9bddbf9177ff7e99007efe0af8f6c71a61dd74f857af12b703d0c3866e393192bed32be1c5e93f500045c80eabf152b641c57c781005cf1fa18f8de963662ce51fd77988e3c0b42f007daafaffa4b17b1a2f5f6ef8d943f56390d8cbea5e7f9d917d80f7ee68fbf6009f37b33ab37c54b208e15471148aeb12bca63b7e9547de518a4a6bbaf0b59f00e3c881b266a863dd97c0e674fbbe3fee078dd6ed76d2e38294d92c3d344bee008f80a9fc579ea9047b9b7e4f96b281570631efc16a755c20847e3d9948e90a00a8b5c4e78f43a3ab1eb962425dc9b32118e5ad2017e55813f3295fa12df1db00da51369039e15b9edfda3a0a2c55d03abe453da985a8c254cf5a4aa094f037000a8782546b5557f4f175acb8655274d799c005d826571f3af70642f534e4a700881618cd1679ea0d22010cbaa60bf25a0cdc14619d97821af74a59c9cfe093000b8a429ccb18994c11729a1155b4f20d8431843ed1e3fad4590af9bc2f16dc007dedd452a7a557dafcbf85fab38019cdf4e90017e0a974f83162119a36ef8400c65703bab5e28392c13d64ff5d35e7523570e8582a4d928845bd43137ab8380068eff2fa2e9caf4afe16a8db82cd2d684fe730a6d3dc6d4498b9b657e6b70300a8a5e7df3797e570ce3782b2a817a8ad17fd6ce607d1b0593fa8acee1e6694007ba7de49461b1527f4acbd1c2a27590f404edc6956e8a4bfafc2a20dd2bbe500544e36e74e287440bf9102900ab57fa4f3d66f5c0ca96cdbb5d6e77a3aabcd004d7c0e03af9dc6971d5cda41ab748891a49c79dfadb8f4f3be6c3d868215cb0016a1ce2b82eac00255617eb31d8bfc6de1651e892b2300081463c7b908eeb7009a6bec8989019e98ca295309ea5810df7af1de9dd2d39db4b74546f8116ff900f1c6fc78619e946258524ebd073535a70c0ef6da498fb047ae4ede1fe1003700da30404d25d1995b93181c995f866c9ad2d79255eeed5516b0fa90dbbd3e200049e473f7e0f0128f3cf80084d8a2a202ea2478c77749b51db9437ce437e7e000d05571d4283a5586534039c7549d2581a76bac9db9e575aec79cee32475bf00047fbf15f67e767f0430c786c0a5ba9094aa54eeb6d31bfe470b04bdc33668000a3bd728ea805888b4d27c27010e9bd768c92539903bedef4532f32ca05b5b1006b692b3e529e4fb7fb037406dac3614c4728ff58a1601f651e1a5bf5e215c300515b8bfa96a64b6b1faa577ad81ddf59f647b27553b2722d021f9ce7a6352100b154c1d4fe7a8fdd8b004d8be3aa0905fbcc10a65e1ea35aab7af27290200000291132f5e407d5bfe8fca469894b6ea0f327a4eedafce2d27f9ec1a9f51d730020c0eeb1961381ea240e6fb60f950e412a92375374124f4f9f41f28eec7fcd000713f5010f4bfddece7b2feda3884421e356f6ac89217660953ed2ae3c8d55009170bc0a2e3e192d355d5343a90940e52087989589af1494f63775ed1a838e003931e7c743b4c1ce12191a32ecf995398f0ae3d3cabd6ac23a9f6b53e8f1db003a1be312d002f5283cebb363a8df3a34a8da8825a9bf4509dec6be342fdb5a00d6aaaee891f82fec76caf1d6fcbbf6745e8545d4226d1411a320170f45087f00b17d3ed99e0e80fa6307de5acebef0cd38db21de2a1bfd3799d6eb3b5cd1c100e0d91cc7de1dc66e13c67053137d96ba6c09057003922a92ac535bbd0cc39e00fba342edd8413fdc6af7a730cd78758085539596e8fa1f93df6d773c3b1be5001d7873900743d03d45d12b99ef9df7d4838958e0245c1301c2b22e451f977c009ecb5d61a89f9acfb47224f9948ce1b820c76e51cff63acde04162110fa05c00d50faa20ed05f48dff0f3a085c237687faed1f6ccd4010c2fec766ea68864f00c20c99d427dc3a5f0b83750eeed293467f3b5572cce55da9fd3ac1ec41b3ee003e8e20a9289f7b51032031fea9aaf618c5e05bc79f5f103b60147facbeb4a10095994f1348cfedf7d06ad1ddf943ff9daad87a605b51a1614314be65d920d5003523490ec806a7fca6f5526506e29f292df0298c81c0c398d5e60b88edfff3007c299ba4f73dd9a5f23322b8ac84dee1be293902a14c63673a79051ab597470062d1a670dca6bb26c007c3242fde4c7882d124770bb3addf294d5afe020a09009844eee3b0342f6b38cc343a7d2833da76e7d18f2ef630d68e0a442bae92cb0025f9b8c3ccb9ac67d7739683f1feafa9ab7b556fb182b893b2c3a1aeeb3dc3009362041ba492503ffb041b40c319f1e3ee6508c2f67bd392e3a2a1cb4f78dc0096f149378cc8623b1ebe0bb01133c76d0fd2e3d52e84433cd2b7b522cb6d42009af6b8a4668c502a9be25dbc7b21508fe4dc360b58aeadfc16f65e73f48de100f46afef23154a659f395735031b19ff97bdf5e410b240ac7669ea087180cdf00cc91c340824fde50c3c5515bef93b1ffb65b14fa071c01cb10d1f4291120e2005b27dab5344968f72b2577fe6f4965213d1c62f32f0ead02c5e9b7e70c3fac00f7039dc462424f9f3e56c0ea5286ebc1bd02251bc366a9ef60313e4de5f06400b5ec7070348d1d25a009fc9edf40863d977795db246d5a4c24a9256b03834f0083b8772cd16ddaeecd6fe60766b6a38f57e271c9898754b71dfdd4c89f2f680062b8b7d44d599f8171ba43824a60e4df0e404957965c5af5ec1afb26458754008e92fd191657e9a8f0aa973f3ac1764730d420feab9cfca9068b28c09ceb81005f79c1e62383180aaa223ffb1a0bd691063bea3fed88b8c57aaf649edea726008098532b1716cc4fc3da2fb8cf97d4844c97f0b1818f1e89ad0c35de379b67008b191d689efff744e67913084cf953fd7c975f9e38588b7266bdd071641da800e9aaeac58a35376dcddfc9d4420d3cb8c3fcb675e88c8f5e82e0238e55a59f00e421d4935a26067937cddfe312c1a3b41fb76d129b4f8928fe25bf4477a9e400206ac6e01d5fce40677deb24ac2d2e0c1ecef3252a62c989450e40ea68742b000ceebf0c8e0f14edda0081250179fdad7d843cec9480daad3a4c822049824600535761a2fc6b3726604d99ba58b28e41bc2c9d780d695a949e930fe81d258c0033a94b2c603c001a0e16b50b9fc1983eb1eac43cd17f6f882cd47e7ca95155004de1192d76d5af170ffa35faaa1206dcae459dd270e2a2ec479638b769deea00b321e5fae277ff3ee0bd079eb102743f725944a3a0b87d1e43ed19845bbbc1008562941d214b6ea6dd89eb4ceeadec51553693aa8e71b5ef76a39aaf574b6400494700c7d69156afe7b27260e5e77480feb9d6ea53ce391c24406ab24942cd003d8a4ce35201c2544e6c329609c6302e276a913f0b6967a3374d3e02cfdca0007261b5cc9f18f4018b79e6d4e1bfbf632e1316523a0ff7b6aa343d8bfb4fa000b9518b3193c924289f01cc78fd2ae2a112dcbe31b00cd6cd1ca4ff52c8d6ff007d3570063a74106d67086938724b973dba0be2816dd9b0d38b8198d4c091f500a819641bffbba167f111713424197f7e9e301e3c512090cc673507fa59850e00af6d467f2d7ce1a2bc5ff3c4c1ce86e16bc862c65110b29cbc9baf4dc8fc8400b6ca8a0fd31bffcd775c1d785cd1d12232835f888257d4dd8c4e20657e2d590001bc27bb1379cca9c7d1a5b5c65f3fabaf7b083c6ae71d6ba063676dcfcaca00be264c8b6a7ece0331e2c993f23f57860dbf2529d3a0b5d01140a083c1bb8b00fdb65acff713cb3d36f9f8196626029c74896ef504c1a8079cac20607a961800d391b4bdafdec1978685056855279b1209331274f8cdf2ef032d4ed42121d50019e3f1c800def9d6d4ec4fb5c540f8ffcbaed19fefdb89096e800129df863800e8911d80e9228f6ffa4fdcdde596e1f780e278583f956ba82b1159aac7eb7100dca7b173607c42cc6921231f014f28e7f901892026e9c9de3c99f1ab770f50000698d66f82eb676631b445c029f143fb80a6e67ec13b779e99263e9dab248900df6b383913574c48596539b1ea84079df9d527e6e462cd9f6aed9d7fff16c900cf41689697177f208fa2640648f33dc41a5ecefb3d3d97808ce7784cc87d36000c764bed990ecdcc1d35d9add44e9561e608edbf25e1b99629599d25bba6030055716491211d430d80f8dc2b7906524708f3a1f902a0c37da85c2088b25e9100a373bb36d35b16573992bb1b9be7afac3ff5e23261f4d5ba7cf35762de98420069ebc91727b6c3ea9b427550401acccfa027fab17ca4c9c4225012efcea95400494c0050f160dd65814504220f8b05fe8224d686e2413b155b961cb7f8f597004098d0d0b09a8f4164b26ad4b2c7a2aee8fb9671f8473c2ac3f83cb8d8f2f9008308b7592c3ca29118e3fd4caac72f62eb5506884dcdc66a5564f2871feac600075ccb93dc4fcd4e204453596721695cebbd3252676561e622fc1579af2bdc001983ca77f4ecacff8d3c55bf7f6d3316ebfa6ff82b23e92185df7a02fa786b008eb583913f93dfd3169fb04fb7fe3f0881c19a6d54be07b767f0e3685777960083434afb746eb06784ef5a94d3446d3ee58c8f57cf148344034f1b45f547eb003740299066b0881e688c0610edf90e542083923daeb0dab1a96549c80f69bc00b0b66e1de0482fb67e2ba36adf9048df49b426eacf488f5e2eff4f788c38b50069cb3da2d5fa1fafe66427e9ce79eb27171ed78acedbcd66f21295f19ff1230033f845158dd8a687dc425b811e676d0ec7ee027082d0bf879d85a6e763526200d96a11ac871d2055836ea83a905da1139370dfb5ede8e044386749eaf437610095093dd2aca4b64d4d546c61d694f919d0a26d47527e748f93d556a523755d00036e7dc60021796b7118d9b3fcffc86a3a24a83a8f7e2fb6fe056fa9d2165200c3f0a952a1f9dbc663597288d5c634fedcafbfefe01378f8eeca7b30f6ea70001393145f0ce74bdb9ba2987768d05abd6a80719faae4251e3577999c13ba80006ba66b9441aa5d404c35cbc6ce69914b2e1f8b2649505d729c2147e95a4fc1007ab05949888a20b1cfd3f1a28e381e668947ef3dfe9198195affe6efb13d80006b2e7bd9df47a32d1a6a681fe27d6bdb5890ff571c6f93ee60dfbc62cae8f500f9c3b3c6998fe307b21575dce4df480072598700e959bcdd5b027c8ab8ffa700ff32da2d99f7d3e7f42babeaaf955535e97da0c0881cacd347b3dd8e66bfc200b6fb28ad915b50d708e449073efdb806ffb36e0906405c308edf2ecbbf71f500dbdf0775fa098451de44079f83787c4a7935ff722b8c942411501607603aae00aa0bb9cdb157980a194ec15826ec42d6a89a5c1bff76261e5cc3077b2a8e80006f005cc0febcb46f2b8fc2e264aa85c64b2a041511fd15dbf6e25746e8293900ebe4b9599074d2112c9f96724faa6588a490ee851cd55f7a92ce675db1f9790033cee0855a9da7eaba990b700153ef63858ac23e6a18737147ccdcfec04fd600cd7bb03f6b7b310da3a06b8ee37f687e25d8e21fa094a5d5d2152e7d458e2e00901977a4f17bbb087cbb3cb62d7e69efb61ba3301b3088133b5b352c1d452a00e98bd6c8fbc26641daa4e88624c1bd2d611752ea41eb4792160c4be61653fe0055032fcf4870911c7965a8eee4adcf1c043eb6dee92db1ce5209bbbadf4f3800a80540c2fcc86953d7566fc26809ec9f7c335f4ba12bda6216563eaa15e391003dfa11a6217ac27ff33f76e50806c777c66127cae71f4b31a5aefc0d70718900a1e6271ee31174c70382000b13a9e6abccbafc059339851026a81fa21c328100ff8775118e0b6a07feed225e84191a6173841cb9c869fb86c6b607b5d5a19d0076180a10ded4909568ec2c3aea94a57f777f33460057d6f37fec394f19100b009132acdc1c4264e6f44fdf7613793a19718417ba4fc9329f2496d34daddf04003fb525ee8ebaf23afb6729f702fcaf4baa9b4a7672d57fe0b7763f5a12658600a94180daad3559e05d96a44a2d2bd561f23e0f3b0671314ea13039d3c12ae7001d6d9db524a97bd99202f03f1044f107ebaa803fd70c22912b23948fdcc06e005895e67ed85adb6677487a90dac5570e089d370ea4ff1cef1ff14b4edaf748008dff85666b7bb802aff44f99fdba246e297d1f15ac7db17b0ace71bc8f158f004ec2be8202f7d0c9c9057da82dd3e431ded8d3a545fe39030c9a4d2c8260df005e693e8619c2c3946ec6060a76afdb9a42d07b67a8e6f97a8cefa6362d8d1a00bf831e84bab571cfebd1c5a062079fdd912b02a79bc8660bc24a3d903d3f5f009df357cdbc139565e2df023ba13ce44d265b0cb3cfa4dd280e5deed15fddb900d4313e13082a06c188016be10516426372d3d23c02a52b2400a22c608dc42b008c58205719d54aa7d82f8a43cf830f91762a3349384e2d21303a9ff85988d0009b3b363881bcafd2f94f7557dbc7ceeb6207bd33971964d0b00f91559cab2b007079574e0ea24e924741e23610b0c2804807b0cf0ec20f10b907497870f62200f2997c923543f45e32e8534dfcade5dc70de8dc7fed393b8183a401a594a830017ec3b70cc7eb2581a2d3f610a2dce0e480b91af11e035fb5c0686a735ea1700c543f1bf82fcfc4cab24771c943e5060acda5d29eb710d2d2c389756ef047d006af9427971559101ae53e2f27862f9841cf07dab7cc63a1cbb6bc20921a92500ddbe07fdfe926444ed1af97becb95c1b06268830c5f02a60459f46beb78b7500e411322a7812462af32c6f3947ab61e0ee6f85c2a3a0a59cfb745f00ff173f00cbd52fdc061d5ea0b099ace82f5d3fbcdf8d7370c3776380faabb2f1cbaa5f0067e6e6de56abfc1bf27cbb7372425b4bd772a840c785684731f6299f9b7d140081cc3e06b8cd8e11004e08ae1065aa49af5bfdf4d0fd4cca5f7fb1998abb0c00064f1c8ebaedb035fd076ab18c3a76955f0c1fa0b31fa15125332cd747c9c900f0e73d98e619271501b21139a29bc700e2cf07661260b1a9c2801b39e4e27b0019b4b1332b54707798922ea707fb7e70320dd36429ec1efcf73722068bf8e1003af9ccf2f0acc83341d24290a7d61474c02332f230b0c054c2003e38f7b36a00a5a7637d949b90cd4487e64a1ceadf8a7ab46587aa2503386bfad12469075200e5b560deb90baea380a141ce3ef980c26bfca301ecd0f0203035f5aac4e63100fe5dd64accff0fc0d1d7943b57a4a0384e1ccad2c53847be718c5a5c1e9c850067eb545e468be6cc05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000