Blob
#0x01ef8bbe029f717ee1acac8da64112337399f3b4f75d2e23de8da9e65b85ab99
Versioned Hash:
0x01ef8bbe029f717ee1acac8da64112337399f3b4f75d2e23de8da9e65b85ab99
Commitment:
0xb322999295da48ced72533faf2734c0acb46a4cfdd454cf06e31563643095088454c2044717a0b2f80be5285c33c5a66
Proof:
0x828870aa75e8d0c365a4ad367b6b359b53e5baab1ae792a0d07767bebe9da494c8bd76fc838433378cfd93ec4c5f002b
Size:
128 KiB
Transaction Hash:
Block:
Data:
0x300000a78e0025a1fdf3b2ac54afc521ad244dd8e23f00040000a776301787923860105e26eba214a65528345b8279fd6d7a5d8a7f9ed4ef2093df323e982da1219c7fe0de2c817f61725ba52c01c03210957261134f67310de37814ec904e5226d1640a3126511d24b31e54e625db92cc163bb2b44c49df8ed1a7f77db6a3043b79c2b93f29caf666b02951bd8f6a5edd846c8500b53ae03b03fdda619043211b34d5bad6582e7ee5d41bfb13838edc0e6d764d1f0cb78d232a6a188ba89f3a3806cc2a97ad6d568b87d554f1b3728205c0aabb5fef155b5f50319f7f73ad732d46f4f7f62974322843d2a5466b1653176381718fc4d261dce4d334216a723f1516da506963192d3aee103142e83821232ee0d3f99154cc80cb8e6700190ba11c115d51ff590a1f80a145b2c044b6286022145dcb4a9ae3241a369edb86136e030418ca9056532cd2060a9fca1cb6dc9d1f995a35d2aba21465d27224e72bb704f6a63cb78f9f781bf0732f10d4f3096908dbfdad3a23b717b7c28cac32eb1217f5c8fddfa9426e948c81cb04c1290334da7e5d8bc4f275759800ba0ed7f6751e4167684d4887453ea5e1c1132654a43450dc34c28d97d0b54dc79e14f6ef03106235b46cd6386a88567ddc17cc7dca28d8dbedd7b3d0854e1495fa00114dfd178ee69edd2ec9022ce256bc482c3b59c7df006115abb227be69a94dcb21f039043dc4faa647f88ea97277da587216b5bd886b4f99e7410c39f9d2a67822c7b9373c74ca2cbdc86ba349f2fe245657ab9e588c39d34872117bcb48ee9b5c25132e97d9dc790ebf5ccb80bd8c0812de01362c3adcf780a67e0f279f899d1a513d1dc8ce65039ca7be1d20460fa56ce46c696c585631f649dc973a65099f1745c5151a9b993ecdeebc76a2c21c4a427ec185cd8066a5aa91bbb6e977e616a0550928fdaef65d6684ddaf17690cc0c703f2da04e50f9e7f689b16b46fe4f8c918b324259148e1b5ba77caaba08d818e5802e8da5bbab678af15ffe16bfc7fb5d835205566c8de03396f38532bdead6c0f275705c1bebfa7771100a1532d61018cd9090e6a8fc0ab129661275530965d78cf4c2346cbeda72bfa5d83c63ef640743524becef7773abc9e221b016bfd3cf50050348a8a937e858ed5732bd3e0e0f8c02350b4b298aba26ddfed6214b1f0dfce93c00c9eabec777c8a87bd4210928f1904df32bd0e7dd9f0908475be1b89eb9494903eb113990cf34c831472cc6f3cc838e4e5cc8ed75290bf78ada67fbed3ac2f4ec836a2a5b1331b921744364cffcd1b05cbcb41a43da763c3123504a314dd231ca079ed567f8b52390c2216fc9f92237e052d8b4f5d10efeadd1023a7ecdcda9795a6d416d2fad9efeaf0d456f8a127b9af7182006ab2ffaedce16d7a21b0778860e49621976292e5c8544e4845ab29266c431e7d616031be2019fdea264d95c1d8c4c6c6d2133a1d055e7293880f1ddcc17c5535b06140a765cfd52d491a09b0557cf0b06478656c26b4146687903c23d57f7020319c8f489dcbe3d67f84003e01ff6cae63e125620410286026290c029e147c50524807b2cdaf0a41f57029d2ade037b312093b37122e2090cc05282c2306c93fbb640ca57021953d65ee4afe65a00ed10a08282f3502e60cd4113928846a44420b107e1e25f09197c797840375647ea1e521d42ed56a62790d4f0f79448151c21ea0777e0b3e0c2dc9c8cc64c88099edd49b1c47079aec85d0051802595869c9cdbc861d0d8ef18a1f25416632700a6eff7962fbb5ab40ce209007f112ac227e51da24983120a91992914a34fe2cac46a278045e4e32eca09066288f4c946fd6ba0eecf9308601eca3094d2cd0dfd01a8e1df931961420be9ef40c4521e22c11727d271e3f1a56351b16eb5322156d579cc870c8cb3ad5e8150e37f0b719842da18499b396d50708a9c8bf8d8789d3db7e72a249a0752f5c49851cf1adaac61e2ffe296ff0f9cd88616fedf9538966ca31ab1150428382136284190dbfa13138e1446321ed5212ba394600bf8515a21b7105ad13bead54d8836e1270be74dfbc8d14988c55cf11a2efff9d3c30730d6b04ee57b43092cb7634d81eec3bd0119c90971d1ded3ca25d81f74731da81af5452e6e22afda7236625371d089f11302881891f0abc4397e150d70184001555d6baa7052f149c6b2381e62a0dbfad664abf1ca7353e876f1c12af429c5ed8217b451b015d7e26ea67087f0b3b0353da3ca739710176941d3cc26482cf8b00eeb20478aa68f074f8b40c5714cf44e2faca98b9c01f4735befa77129b24e10f042d11fed4812533a2189a5a3b654b4ee8a2014971aa0f9425b0bda1612403513416da6a09fa4ac8710b968a242271e1650d1f7bdaee26e2cbc4088c2a61c7ed14be2c92fb67c49d241e1606102debae8c80e977cd4f64da346b936fa34fe3ea37ea2f777175341b3a00f4ec358b8bb6405066d44b02872c12fa35f07287885ab4043270004a8321f451f6741b7f9bca29680d69f3c7a4f60c8d40ec8b69c2d0ad2d4c88aa127aad65348b20142bbb843dd3ce8dbea2cd312c5d603caf99df489bfb93ca6cf86227448346652b80cb6c25216e1d23d5cb2674ff9bb0f3618c74175086c5212ec88837079f080595747e4a8af39307dd47773a2e28770d1a287eb778c7b1ba4ca832e851965c313916170b335c0092ac08c3a80bbf120fd8c3c705a5b2992674b48769e8bf6607dab0986003cde7c727b92890fb504a01f05e307e660fc785b0791970102ad728c71046fa2a634aa89c6b2989f10d55e305413c4fba97b98ae08ede817f6ce900d0f94ae23ed43116c49f70b38642ba67d1869b68e0e0924d727a09bc1852360f55868e5c27169eec07c0a70d8222d174a4e10303529cf1c611fa4726e7449a39efe755dcde6cbb8c0d68b959baace2b80f7f81cabc318e9292df90fb3813093dae4d181467484be0030d5f6760074cebea0a5d09f910b99c403b0d89c1019c3944c87ee3a368407f60078fcf76afa443c65714060b4bcac09675970c4e17ff235cb1c8276d12e7400ca8c5dbd3c39d282da44643e6e476352d3e79ca5211d831c5134d0226574bbde02b88f7f0a3c9ee2d3c93f93a346506b099c003198dc535b23a97752823059a0427ba92206697fca2d2d68e62703838c29fca27e7d571193efc05d113d2f254faed142c315adbffdb795b61fcacca2fc4920751151c711b9535846803feb252adf8a18ba646afca9c16aed84073e0dfeca8659250df350eaa8bf3490d2368ccc68459699762916722811504175c5b3a81a85c05060ea61e8f6db37a01a9a0f14f77528f7c5a923daf94d9a87c11a008ffe7422c73f80c05ec4ec419d8d22c197d478bb4e3aee81c9f8ede05ae786e191085e466c6d4a239562ec1f2f4157560fbe312f4c86008da429c303d9544c67e99c193317096362a8458d687d7e974f21de7c3249aaf35d2115c99b4a4f98f8407f628c4446e433aa64b17f4a261200b68695a169307ac55a40a8911394ed9d27ab073443e0e6d0c37a41da4ecf28e036afb1368c586c5aae526837ba414b6fb11a7d699aa9330119792dc6ac1e8841ddfe03cc98c0f7ee81f2400dd44db983d46fadd9b1134b72b328236820d5502325599b3c481323e93aed13076c1105102971e068b12b3dd13b152a94dd58e3c1ee9ac8d6b3a7cb94531839c894acd2ecda802c3917a7be32a114859da5a12146187877e7d5c809bd05d637884c94284b0a9254cc97607ad06f928ba419d419cdcb7b1e532de92d38c3cbe3c122d190cf4c0fb7bfb322b7319e75cb7df9a521f1e7f88449360d6d4d2965cc23c614e13e3b1c7a28f7f6648066421973181883480610b2cf1795a7279c8322af5acff24d6718a11fda1bc8601b8e815c44d9e49a40c0a3e2b0cfb5a629b5a9206f4be1bcc75d8cb242e70e438f2e0819bdb56146c58684797f424a2cd78639da3e125733ae8a770faf8d2210c60c09f52554be8c9521b22073826056693e8234fb8e6ffd175243bf5793e4c2f8e36bde3a4ad183550bac1f05d3bbfa0c0c41ef5f5210999c43a42291df23d2661ffb0ee94db665525deeebf9d650755cc5cb53b8cb972b64eb39744b04784303d548c4ba3cdf8d8a74a501f0b904be393b16cf07d5a0bb60c92a43b7eac6e3e2d13c10f4ef6f8f266242ddc6527ef770498cc5c2a45c2525159d2584204120240427ff3b6a02df53d085851c072490016e6579954d94af0963621e818c04c1afd0a9e4be9025d97b54c63dba27e554b08f53d7afcd465f1e0310a23d58d751940171a48a10d8d704028d1316ac08d8e31218ea9530c8f301f157b4ecfa401203497de917ce9d60b87a5e745a4239969fc2a473a65fae5f39645970eb1f7c40355f0474b8404ba61c0bc4bb03a878b0e0bf269c1faa55c179d70fc10b963653f6454124a68dcdc4dfeecd40c3a90259b4b4286094949fe0f320db34b344bb3258863b78cf43d998664ff793d813aa01e9330bac3198b2583367baf2146c2ea2e24b050472cc4288852996b77e6be5b02b39756eea09ae892aa24fe70cb171013ca452645388b0e631fa8fca540f074face0d2e30f714013a94c027881bbaa12f2e5b298cd1a384032ecce597e8d136088eb6d1f6e99a5d2626ce568170cb4d143d89e7568a661321e2db86150dc1fbbce3940a2ca4b085c3d43dbe7080281218909e496bc0d319cda508be4826a4d032db3a9f3e13fe5e28c0dd28e921a08e35f7b4cc8bd145d826fd0c65570b1a1881c4701478996656560a5357269be97f0161e0b91c70ca2ae0d367b9f8229224f638bc239f6f601cd15c972c7d7ba0f0380294d9ef41ddae945b6ac0d9cb2b49bde073216a93141f4e613258c853509401d67c915af5fdd70f20d0cfac9be5f3c78d7a28eb0fc7c3946f1ce6c614b54e308fabeb9de0128f83584066367751c5c9a2dfbda19e1378523dad229535f21d1a297328de2466358bc764db6117dec7fc5b38111921f8ece64dab050000c4e80c25a62bef3ed980ec9034e237909b35afc03c3cf205758b4745867bf95b54e809e26121a88e9bdc1fa4531b49b8db3e45def6fc64bff53a05ab169b21ee412029c29a939d5496e8d0b6ee7e6ae12d69b405d9ebf2e66be3a0fd3dff91e3ff822b6e6220be791f3d01e52310367fda2219b2240053dc2d54b6919068609d976a20e5f3df64db9908b051dfd03087324cfe5f9e1dd96a5abec1195dff569b410039bf7505a8bd4847ad874bef3fb68dbfb4d07a282e443d3dcd6d3d20a24359f6289d94014682bca09f1d8811712457efbd6e34eee1c5ef5648c5e396b231d59b3644725538c6cc2b3adc21ebaf07ac94e3fdd857b8f40b78814b7f09c052874525073666bf0f42ead7042eb2c837dd1ba789524c67f6f6664667dd59e27300982ff134f4c9c20d379f435fdf5fd6e78c77276788e996bfead8c8bbf9467ba08f2d00bc6f81fc77f219a174cbd7c9bfbdcc841d3634ffbcb1d57012d6cd49becc0f233afaa59af3bfe813b84047f1b1d21de12267d47a848dff29a24157d7adf03506fe555cb0f46a76c727a382a929342edef87b12cb9d7169a79eece846a769351c158e5a7c40dae694b06fa0bbfb84d7d453ec7b83b50354b2020000ee0f7f247c4a53171104c0ffc11d0432c8f41e96f8d06f5c9a746836babca36e6471aa2447779b3d9da037da51a878bdd1daaf4a063805f2d4f6763cb0ebb656f63e5204a4b8e389067062838a6fb9b905dfe12ebea238062fd3d7de82285c43484fcb14c71784fe312ed3e23dfd464c55ee1a9971b2c610590969ece28482ef598387352c667a27c7e8ae5e81a5adee99d515b887959eb4e70ae3a1a147a3af73d58427ab79a2877b977f726736b6069142e0bb4cce01317bbff92e5589485e4b298115d0d3d54401b617908fe5d6def890aa857935fa3e479ea090e73157dae69c4f38f1189b8bdaca7fcff84e55c8c3f585164a7c12a3175b797ebf5ec281b07c482d30fe1a8dee0f3a3a191dc5b9309037f380016d65d831fae29651322474dbeb0cc0685fee7855654386111db8f362745ed4a1bf1766d1189d193db376c96f4307db4f88aa6b9e55f692cf302fe0597ff015d2ff333e50920c9e5e0ef9044b7c35f7811d0c5a03e8a791ca3cb0af9869bd0761698143cbeb3887a75b336bb3d10c30aa71506c56643b1799812523d3ff41a406b947e8d1889cf818fee7ce762203315fead266fdf95e353ec7662105aea164c2a1e1f59ca8446531693c03ac573bcbf4e645ce744610d2d8b3d04949669a8dfbbb8e02bcc06fcd481f29fd23e12a6c2fa9916a886a1da6ff3a954ed6fe0d986cfeefcee4d7ac6a3bfd0c768c7634fb369518d01d8c6d00b7e04f0ad2472652e3dcffb3ddd4a284dab2f3af953309bb89c591d197d8c2cf57ae6fb42ad6b8563911fb9ae53bbb751ef8c306e72f2afbf9052cfda1bf586bc486ee68fe27f64a53a82272ce9d885bf03b3de526db0204a66c43aa0ca38aad15036f8763c32cf0b8e4f771c8f80b287fd74872018c1c7ab94fcb677322f909fe44b48146c12577ee95b46d7e694f4b9d8d19b180e41006624732e6af8ba48bb15efb37895c287d3b5e5f40e9d7a225e9f9497298dd2d63e2f496022cbc8b4f9ccdca38d50e0dab9ca5a8224a48d11ae76a29b4977c1861de010b81ff557645cb6b7f21fa946769b757fbeb152c3d61c372ec2af177342faa7030c73ec3a9e1b53d243928c14cd229ca197d636c9cd7316c761c492f21841109db2c2f60bc2f471f3889fdba6bc55c33230809b6969c76be41396f1215b47c669a1b53bdb82145f7921035b0a7a426190f74cc8fed198fb3e37cf92f1758e1b5d20a5d2988e1baeaea5c526aa33249e345cbd4e2d6bced4e7a26015f131894d51205205da7272fa80b8f72a83001819ba49cbe8f8d64be278b013306237be69abcb3ebf6a417be9a14bd60568c88a4f75a66fdd307be019cd032315a1d0eb9a3c24f60a2e21e1bf172130eb59acff27e4ed590751e0f15dd53ffc0152b4b1959558e37ef9bb4422469153aa0d879f19f525c260e681ed5badc78513d0a6b4852e96b372c0ca29d964f53aff2fb1544e98db6a2d008997421d51487482934c34f1a8d0140f70a2b5c063b72dc431dc765037bea0597262e1bda33f1a711f6accff06f161da67299ce650697995c7ec1659e23178edd49f6ec4e7b16d3297b5ac8e1deeb09587a2fc9f424df9d4beb14a43063bae5aacff71d5b86a8710ff9a1966872e031c51ae73072513222fb46686901c7ee599eb98a1bc48d708f15870c3a7f1e625b9fcda2d0dc693dbf4bc836431578c640fdb80832fccca2d622a617141f7c774576ebee8bf5ff9f7a7f966e153fa84f58d6c7aab50325cf2f3624c016cf530cf572d5456bbeb70a35339e07f5aea71732b5fd582690cc1a3c3d7ea051e91624fe1d324d0bb5c7cab61a788e92142fc2c11133f5889b276be3181988e5e4517dca8ac705bacd79a05f536cfe9fbbb54f283cb4eea86f420c3b2a99385c64b2dd795607fe3a02536aa32cce066705a90b5f54fcea291f5267da3000c1d83dddeaa5783efac41f263f20f3f31269004a1f376538200b6410346b00f8b93f78b13da565e8308da799ffeeb81803d3a961d8276763f992cc0d00002eb6bd90a681f36ce05ad65de918ef6cf02066311946efe09a4c1fc81d59f7bf1e3d4914e81af68d57914140da4cab61d278dbf176a0e51fbc66dd6e7ec7e7e5052700cba12530fb7cb0eec0914f219a8b90a77218a3d75fd62f7809e85123733e8daea14283baeef9292e37f7190885093858f737da68db7be4f9c776491a5c2f8593d1d34c26c6bfe4d96ff8e6e6fd14897bab9ae4036efc067ae00bec1ec736d634a17dc74000ec4691a511e2af8cf241b3a0191b22f8c7b15a79d374db7b1e2fe39acc5e1605fd4418f2e1388efa3c37908e87cafdf3a65097b5b54e30d130e32da0fc4a516214e2484a9238f12c467bf299b937f14e175acd6d965341c10e7f90c131ea0ea60084c619629a2250078a41535906dd8a9be3d3162102dd1a286e13f7f39b6ae71134852cbd165d4bcb9873b37bba8ca4c72b9e9ade263ba029b3ee629ecea984d7f0f911d9185dbf6fe8e8d3d1a6e6fbca3dc1659fa3b0df1f9abb50f13afd51cc249fa8e83210f49b2a05c6525a581ead8ede8c92082b52031c1d17052d06c488c66b04cce8cbb467ed957c9cff0ce89e9689b4433c32f636724646fa4dd4d5c18a90ce07e12fba59e37df608ac2a0dfed90c8c00b0b33f2f7c795eee8333edb099934da22b2dea0379d49ae5203236e8139ff46391029623c5068c08a29da357620cc7a894b755b48bcec65619618575ff3293dbc582cc3df2250a1f1e7fa1d8e2c592cbebd0850ee1238a708dc771d15fa27affc6c2ea1561d56ae49219756c59f6df26b0c2db32bd9f1d51aad57da2d28d885bfab46513dee806ef338f75a9ef04e625143c52fde2e34718d90a776ba4174a7a8734db31724caa3dbaff98346f1cff318dd6e0c41c58622ca0a51d7d386100e04a9b0725a086086dfb18b4eab69609b9c4ad78919eac41ecbdfd2356fbd1dda0d0ac2e24ce1b7d664f22f1f75a38e317a2836c2f8a123c22c5131c490d8dcdae1fd0251e518e488643059c44f2fc823bc87c143e9467804b10214cc06b06051f60fa9d03ec5deba78a771f61a767984689feb638b81124b7ef000e3dd76ab32287b97f24e1a6bf5c59d0a5d23cacc71d01fa088f7a5c81c55b0f9b5785a36d5eefaf2b261e7618a93567806d12040cedaefe0e3efd3276e3f2744b959383d20838b9740100d32f13877e1cc0cd0a8db1d59f98aa91ae410e7a273e33542f977c01eb9c0961b9fa5b918edb7a20c758b7b569371c8e4c73daffc696ff9bddbfc4cbfffe3b8e8587dcf73d06f4cf8a88f8d43473c97dd575d63604ca6b05b58e22355dfc1a2a962c11984b0a4ae76307b03161a3b949c9d5ff34f0fc1d5aaf33679a8cf808ea55f402e79da56486b1fbefcc3e7afd122993e52ca8a1c873559a37443be51e4fdfa0b3e4b1bc110a3fbc58d060ac1f7437169226be80e3cf441b8e5fad990081b80b846061d6a0185492a90ae9cefe45e0d84c63580a00205f58645374c83db57c9047244a2f09397a733f398696cb9e623c028d25e7480438091b32a88715696c1e83febef7dec70f6c4c1c5c1ffab53f39584eb2afc66abaffbf13b88c1b1511ab798f0720ac1681bddf88766a3e9025a96d76cd52222a49845f6ff4ea0e78c1466af626743722b9d4e79ed2069014760757152eb8e08dd05204b42cfd39fdfbb02ad3bacebe6abda6928f19dd8952cc43b10e685f37076692159a664b1e1169b3e3f313090e759bb470c263e8685749dc96bd3225852b142253a0d5ae02472523b4baf0df325331f773ad3f4c125595973e34f69e7039e4f16f0c4bcd2ec585e72ce18f11d07d291dbcb442572f267cabba3a9717265c7fee2c1068ec1c2f1cd716549b3443afa3ffb54a2b68b08dddaf9ce34c91f2dfa589bd3f461f0d85ff197f3c50defd28ada4528a9d123f8728612c25a832a45931db897ade7c21fbd781b071d031aaeecda79be26823d5533d225c91d120053c8bea2784082e0bcaf6048e6459d54f189568021a32b81b26833d8b48150500e06fe77814fa5332cdfaf2fc24517d0bef634f28efb5d06a39e17056d1691c5be2a2c0613bbd6e24e9f1a2ae583bc4bd958b212945388fbc973fcf3e451ccff8b7980837d0f54d230753a54d81eddd9e9fb2c34f5bf6b1db4592129267b02fcde643dcfc2c7d9c0f6e7930987e0f8e7c968b32bf94f40272ca80ca415fa74bcc9d6c59cd3ddc082dff7aa2d3249de3c0f7113b9cba5d1d3dee7e5c2f98c27ec8b374c956bbd5e809a620829e7335bccc562ebfb5b3427fc268cd5d4f9b742a78f1a40cbef1c9f40d38d7ec6f399a1b66bcff8b23a5e027da1be7ae92552e4d0b1a353358d8ee0d244c2b8f46959585ccd1fd71c54fb77361c8c2cee0415c3f899a53d0ab6c906918d1143681174ff76810bd9aa26a162bfee50478da3db930f4d4783a6c1f04862a1490775ef7874f75fb394547ebb9363953c0cc3cbac0b9b0bea797f0cf542924dde655d1e43fd7c0cb7a408baad2cee027b8cc4c190df210730fb772bf2f0b2747720420c6ac80b7999cd926819ed3f8403af5a0c319df0b6620dc4f4bfefb34a63100e8290e1397135f4620f609720b50f2b0b6b4dbfa0196e30d4f2e00392c0ff06d17f93f5fcecffedc00f2ee9891f38addca21d27db5d62704000033d73c26ec3e4d84b8f164767b3a4d50458e759e079d145ebab0f003717d8fb00f283833c4676b7c93078b237f24899664ec730df16b98fc24440000c07a23e438091362624b0921e810dacc52e6d8577b8ae7967b32016ec5df07b11d9bab344a512e02a22d065f18a76aa210d155f44c7cf6b8128cbd4c9f09c357898d2f89b7ea1b21eb98839865fd7cbddebdc86810e594465dca56288ebbf4a460745075ca950da7a920594e6b5cf867924111edb8fc8fb0bb590e3066e13629fb58983128b70cb139b70597e9f882e73665e16037b130e1e13435e6316735e158a6b013b6212e4789f49191c6260ae8cfe795a730f0274ff04ecdda0a97d02728160317462b00745dd2c23dc59e5f60a12661a43534e59f8e9023abd10b389bb1c514784f342cb57500daa133c825ef78bdb6e3c7e0288223d48f4054c9f3b6bccec5b2e4890621dfac7c39e89dd441b344556ea1e6864cd6ad69cc0319479055136fb8f4e60d316f40e8a22d6e6ff9212a3e908af2578f0e03a3c24ee9bd96c2f20b92681f19a0e1300dd409156dc3148ae5a37fc27babf1b03b12d178bac04941616f76b03de00e65b67e00f6c2c76f718442470316c65132cbad7240a8d24c9f2687c75b185fa7ce5991c5cee7a3aa8218fe77eb672a656b3e9215957618834f076684da031ff188c2d9e922a704d86770b1ae258d6dacb6039a2e9a90d9845dce1a6b673daff6a8a94bf3a873d57463d44504691f1b2f72901f487dcc436c4bcec8dfbb16830ddc1ad792a1f60b6f9cbceecbb29ecb146d5c4b46c37aebc1405398da392acd5244119cfcf7d151d3b34cb6b7e6ed066928fb18ac0e01e07820ebb1f152045234a4e912ebfae4256afaf426a1e7bc7f527f63de4bac0d266dd65b50fe4026f0f110a256fd2dc017b24d773cf0fa30f852c4a11b476b553b5f50561ce3e50e3c6a35cf4e7214769d2bbceac93a77128c6fedc2c6544584d2463ac780ccaf393cd45960d54462cad0445256c61e34ca82e16966d0006e7ceed3c421808a8f19f86fe08ec480d29693009ab12b32b4d8a3d0faffee6d43c2ccd0ff0009702c148e7508bf514d4ce9a8faf68a480fdcdb1eccbdc16c9f9e93da48d0819e46c93b66348f68dd6f53a211bb274e7ce6fd3357ce2773d422fc2d631dbfd78b77e7052fdd863fff97b9dda6b25fb4e31f0a10c4967576f42dd122e0a1dd79a2379a2fbdf83637e958003f8f33732d463f06ee6f6f4d7e2ccd0208c2f572663b90e12059725d8f752ffd545ad51a44335c962efd633d2d92256e0af3216832124fef09929e8226814d2c47e2792fcf6a889b20b8bbbf6bd1036f8fa8ead672ccfe6b26ed54a3330127b98b84190b8566df0098fdc6908bfd190d7cda8b2969619b9527fe899d395e764fbe0f22bce4bb7b73efc008a5e39bce868ebc84f74f4d6e212bc15f8b7c4555b8d42ad89a45aac64a04e84ddc9b5fddb2e8a5b743431606442e910d3727a18a04584678d62ed9fcb67758a5ff96b4ec3df3292df0880ef0e726c3f2196200971547aeb04cf121203cc8899362976e2d60e7861b7f2cf4fe711e28a814f11ed4917dd9cf95363e471c5f5445c4fcc9419ab06c2c07fbb4f0a33b3c0000f01a0a9926966c6dbbde7549ff6c437987b456fc7c85c1fb91fb0de62c4eaec20230ae5d0b55181df6f012529ea11a2e740981b3bd04ff56187cf12f114ca2605db84a4e67b51c5f507ae2abf024c4cf10eb6e7851f14b0edf07aaa709aac21b30f1346d710f9ab3a326f552339ebb3ee582fc8f5ebeb9a4883c772a094b06a61ae79e46a88779b33728b4c94c208d25523cf6ad722ff292ed8d576a299f4885d1c2a8f71a16d7672b7149f32a3bb33ac858b8e838b2bb4b73707b381571b9a8dbb8723af82858cb79c9b27929738bca6adb78b862385c5ddfa57bba2a7863f6597fce7924ebcc616b207ae71f82a2a3753e50344591a647ef0000f41931d2e64b6496979e3e320c7c90c3dd4703e6f46469adabc6d9389c016344340694f43da0ae91be8d6ffd0a2123207dd79baef0041bfc629ad8a087e91b21c5081010529354e9f2c161d8d4b8019966098a393598410a60e2bf583ed12f907f083115d9a28b52bf73868bf9752bc6f14667ee851ebfe7a0050d0aa1f8a8a5ce38aa0224b671c101ac5fc3709b126a308b23dba38edbd00e0fa26a24664f848324cb453b51b1376c51c784efb390d5595f217fcc4476b07abc0f0821ba6e22342d2b5dbd41cccae4bb832f2da79e6d2f14be871ea23df629447df1117852843503e33a612146a1401e059647050cb51854f9acbe8a6e51ea08d77ede5dfb93f005c854a4896be094bcd55596ea3f3224562a87d798991f4f6ec7a42fc59fc4a709878b77fee00dd84c1c6e98433fb2d9ad141df0652e5f3642052de5c0ad5c220617946b6b0e5ffb5d46704fea9c5e0109bb3d447da4ab6d0b4b6233ff66030038d757af9972c62bb0d726ff057d323b7d592320e3621961d089b70b8e72b22516981e4c1f59f14257c8410020b542900ccde49a05bcbf8fa4d7f6077da2d8072a8342de21ee3761719af2b8c5b1e5e790d007b742bd5124b0b9768fe88937f40989e2757b9a9839bfebd26c1269b9d0395500006b959d6a0cfc7234253a33e529133c765ccff882c5cb5eac1845fdd0aac13248c982bcb786affa5bc79307212226871f85d9604573f07b1784496fdb212920c1fe376af8d30e183cf84783203445316b86e43f32aff05c11ac738697bd35d431e0d35b138a092ac6350c7d743af51366ab45ef2d621681111d03136442a88f10e6af3048600d8d0d0de243020b88100410937d9181b2088aa6a7747937228af94d8131f9ca4021d216a4496a367879cb4f8063fa078581c5a34f68a57f6773718d6beecfbfcb90010067b3521f8270fe27314b21a7afa75243bc1c5383ac9b78c3a7b7d48f9956dffcce965b2bfd0770872d7c7871d2ab07d7569fd7df7ac788738374ea8bbc952d054f5a3c2382ec620d5e8dc5fac7b83ccbd74749c46b087b741cc14cfb0f6176cf7847b23912e43fefec660b5d71a568611c552c90aa54343d9f410a8a88bf3cc70e95a5220a6fd4d6b4d25e4726ab44f6fc2ecd0da7cbcf62b85249e3c0678a440afc3e212ab07fd9e447afba2b1c1b6be721cdb8a33c2b51df4a09c0aabd882202f9df246cb8e82be0afff838416ecb277b0308eb7865a0d8f4b27e0c2c688fbc96a3822a5a3b74d6527e06fb44952a1368e281ced57e9d30a2b1ab0fcbe01adacd93f13f562e44d919ecd343c538d4e40e01a46bc6e593fa6571203cfa6305768d4261fd5c17cd2e68eb6135edacbb82cb12e103d0a40d5ee2eb59af7255ce28fc2cf3a73c70a12addaa8a897a119160b4d8e1a547bd568b732e7c5cf9e0a1b07dbb701de0d46d5b9cbd12444f5bc2b91d1209a29a6b0f308741c53f0fb4115edffbe2edd29207ee3bc644115ad875d23c55e196ad44f95d84187f8188bcd7733cdeb04ba99d5d13120e7edbd6e931ed7d5bd4f8c2a35a8e8be12e99e0d62ce0cf9b528b83ea08f7e340fca33cfd03790beb9b2a7541d832c52be74187459a49e4deb01e9ad67f38fc78b370d60845b2a37c251fa86c8377088aab86d33ca2d556814306a228884e140a7a6ae573fe336a3e41aa7051368c8370ad556e0e4f9e3b63b0ecdfa216dff2759d2dc37789e98cbf70ce20e24131417b30bb853faae3cb1342922af03d70ef0d0f9a0d073928710902e8ded0231ec868b374461831bad42422ef6d691a008570512bbf12d3af1e4b2e9adec751a6015ebf915a30b8a65e53b12b2e2f07bc3c2ac2db08a244a9d99d5414db85acf205af30e245fcf3dbcf93f367795e553f16b79c23da3a0e1770c61f10bc159a5fb9808f6d06a20fd919799242757036a3b01595e7d68565798d33c7609b974973dd207b46d0435d4af65aa3ebf61e4bdc8288568db03e4591d969a371bba10339c57542ea06cdb09e6be8735043c8e541f08c0112fb3fadeaa92d4d0579d83ff7ccebfacf214170200f0c43f83f2da47ab084f71e1adc6848e9996df0415be1294e6244d524293346a867b2654b80581f400595a1950c529943938bef78fd4dba36faf7bb513adf0ebb21825e996828f63580263c79f47c39b7e5c27221ffcfb90de000000a0cd92f50a5330f6164356c95aeb286ab55a504e0eac3065d01310766f997e7028c8627c2ca407f3181390b9f7dc9f5df543759cd4a3d1f6a33b519e9e7df7c7ac0d3de74f1a348bcbede70bfe7f823f469a0a64360e808a908e1537e80c625509db97dc9a4206809d95dfe266068b42d074aa0d2f83ee37f8fb474579d08827440cf18f4a1b08917253ea1300d3d2b74eab8380fa7dcaf64a2f0c277ded2461cd67c5c75b003ceea5120400d2eb007bb5c089efe68a174ca9e1d54eccdb700ecbfc793a9fa90dd1f155ef8cac41cffa70ed086039ca33fa6749b380263c0e62c4d6f68d55570ad726644e8f7dafadf8a4b2a3cf0499000b66c9437fc96c5b55641bf49a4def2964010e7e623b19238b836f8ab43ac9ffda56e334149a2b11cb35005d48006f21c941c7a0c7c5b9c37ffb067df8fa6e6ba0d4bc4e0203ef61b1ece11ab24fd73a77814034e4deb902a9c40cc99b720cad7034f3f9b3fe71c80657c1828adb201ae6713a1d5250d66d243eb10f8e5f5a6ab73568b1b2adda521a018fff04492e09cf1e3c08de091212800152e81fa0f187d06904558d2dc1cbd9a6f5843cbc0c1ba1a38ea5542ac612d9b97956c0240ee3246cca1e20fb50235b767d12f522053fbacfdb5bff53a7715e1a65ccf53f20ed0e0918270b1ebe7b030fc2db3d463e0b9a8c1e78658e637abaa748362b828d516f58a0dd0000576154e4415bcd436c323c158bdcee171604998f7ee5638e30f3a4b94e78ef4193e8067fd635337383249adffa96aa6e07c902007496acd97641bf95ead527b53f3214f55fb8b7a00235eb872eb723db1cacf64edac35c1e6dd11708bfda538e6a0300e0b4f45de9581a25c583fc34e3bfbec74fe919de387656af3c5a49038ee9fd90d4fb7f98186a034ee57fc73f70cc29af9167d8dcf3da9624ab9596eb79bfeeecd8985bba50af34da329351c3a5342a2171f93bdd42900e51e532d79cd0802013eeaebcd7d3161b9edad8b07cdaa569237bbe9ee2ca2d15c21159439dc0b9e8e448ef352bc62c2026d5bb840994cafb84c63c03a76a7deb4ca0f5dab2599ba517c2330c7ab91322963a33d35ad81972ef4df11226cce06aa56f21a4cae512c36c1e7b11c66a15066c01cf23e1a38eb5d10ead1790fdb01497455c12b367dd4ff0829822b2b4d6254673f77717f7d6b37d3696e923a9364b30a4299750bf0702b541759496e41b3473960c6b29d296784877b44e5bccd53c3f562fe65f261d370100c02bb2a4da17df75a29b9e1a1e0b4e1fb50fea39ca60dc6739cf96acc501b764b3373c5ce12635ccfa09b467d6951accdec3788b3d244c3f9d1131c363dcc844bdb6f026171a6e8f66b4da68f07e8a84e75d8955f70000c0b9bd6602364d5aca75e7629a712c36ce331303738280732d00f0efd5e7a1ae4f44cfa0bb149d0df637039446450dccaf9f3dabd139669a92322dce297f0874ee4584f6f63554281d7f06b47bb63d3de00c5a6bad8a04b2e7f35833b7e85c71e084b778de8ec7ecd7de5a0100942bc1c535716e43294e90f5b77fd27f42d6d135aac4888072756e29935e0b7fb7043fefa16780a877e0e1be79fb116526fa4642b7b2753a3192ee34edb9ff98ce31bd7a5c9fc253fa59bd96a052e8813d706ae05a8e49969e5a1f1d168bae97bc1d7823b2bce5689b37f56de80c15e5d17bbbcb691d93fd411b84fc0d3b0431742e6c6e5cdbbe7ea91f8cde267dff3df676c3a5d71045001b84dcb72e5b856a603c939d1363db599a79bf087c7228f676e3cc76db2c833608d99cebf0dcbef28c33fd9103bbe71e59eedbaf08b020edd56e90eb88e0d0c212859f737da9ef5d841c36f32baf39c451c3cebb9c2d72c368632a16b6ed81418355b5117e1bde20e43051a1e4c2b7b92c7f825a2d3e94a7b5260da74f9374a0cc0d42d6fc9dd66e823e4ea47fea0bc6f6e46511b34a5149fa906083908f9cc9b445241cb710cd68390d09a4c42f328f1c08d27b0559bdd07e4cf9f8f0c44574c2e8fcab5bfd7d2b0b244c2a86277c4c1d2f420f033227229d3904a750ae3a47b082f284436d9013cf3c210b2f9d98d06fe0a03da6769430e44872a8e1b114dd83fe5b267ff1a844a737b87883022b364875d077094ab626ed133adc4dbb12c113e983ffa45e41d6380dc94b728388afd7b2e8fe1d4e96fefe10cb39b0c1aafcd1ed3ca771897cbce1373cad182b695c601c7cf9bee1fab5987d0022762435bcb3131dd69d22778779222f466e087082103cb0d023391ffbf3b2041ecfb7bd6b33c302d792e5c5228634e0a06502cd63a6b9c0335f4c13d2df93ded3983cbfa896275d7fb83e75610a0d2a62c4eff9a1a4e15342249b4eadf2c14c07b55500cbc4768df41278a8e158139642d92c35b3a37ef07e4eee6e4e7b10fee398ffa896b485a6db509d8c1944298cd285f5d86ac392c404d4c60c285ec6fda82a3564843b8a5f6bfe18f0c86915d0dbb5378d4ebcb92cad23c591b5f3a2c4754223a92fada8c4ebe07121e59a12edb7378b29e4ab06a26724b6f7b2aa56b72ae366bda95eb9297bdcf872140b05dfb7911ea5bd5e8c203e792cf8f8fe3cc50e35bef954ab9d32aca7e7a7b7303ef91144d9da741acd398f25ffd2779bdc07881ea4f99a356223f570f7bda2cc0d9c7f29285e8d1b1e3da238c788f19bb6d13fc2543ccd87499c0b1d9e410d8a08d571cc25970926569f0b66275fd1b03c9d388f41b1e8507afaa4265d3e32332c860e9d144e4879e1d8ee1190cb5adc4a5e6e22a036f39efd23a6dd64accf5f11437fef8095c114d376f6ec5ef1178e134b574c222a71660a621a3f7fcc27e5190a1190e9763ca8599fecb58d06c779b84a934e7531df270a5938d2630b5abf21b8d7e1d0409c64b89ff2eac7a71bf49f5a5ebbe5c327a211bffc783c95e3cc3da8c62150c48180fa8e6e9fe9eb29656b857d4a4fc55e62902b9d685389562e35378833519187cfad02a64baa894b80fb9ffd38a425fc51145da727a93e69d505f089d25fa5e4d3cabad9751ccbfa72c816c3e036d963e5294847c4a219b2b93fc3c4761e137c1fda0e0d24af57a0f5a885b073c385d542b74552e861355148212aa489d0a576783c9b53377da86ab878e7557ec15ec5b75a161891db5ea1d43c3b788fd11560834947a5f2fd6ed6f7a15b34f5af96bcd8f7c29868a1042e9c0c85452685c18c0b17b2c01458c11c9781ed93428642bceeece2639d8eeed12d033cce2af376e5b272bfbb68ad9dadbc6129e6c7891fa33e6cb5fd82ee21c2943365690dca7cc9ba836439c25648107c29f958205ae4b3872004a5311f76666306e025d0c49e376aee6d487827ab2e29673b97a68dc8c17235a8ee40779726451262d32d93d4c71d81a7cde88749f44d8b76e0a0e2fae5618107631d962326441883a7dd948b27dd2f0b24de173730ef8252ccc56808a84e6d4449b28198fb870290ae888169ef514d890dfbcdf70ed2c5255cc8302f6f365890feceb52e428f33114a37089c4c31e748d060654cf498c1f94d373251369b8c7055b4c87af5b3163ecd11ff1820dbc9379170528d87144791f8a03d110e5a8e5951d7429feb073c876939abb20d644e0dfeb5fe4429e19b271bc1e9aaad78dec67dd552758f9e0051492927aab3e5d75f9f09df3d3201d9ea0f93437efeb764b812e61e0c00000230c94456096d361ba5c0481efed07ebb945f3efd38980ece0666399d1f4d211c93c5b1348c5d1241494306ebf397e24fcee53ab88193856f75e9d87d768a5f0ba2c57460ec2d4adeede3ebc3c412cda9508c0338c9e8596fa7073fe438e08e3a0d66982570e29a51d2f111f5a31d18e7dadb49269e4707d81fbf8028cea7612b5d4d4e839ea2fd0775fa7624a152d1a910c8bbfed632d4abee2c8ea861fee21405396a4583f5504be03a0d9c04a994c0bcfcbc472c36d864de9414628791c40398fefbbe7c7bdb359ac50b4069e3295a2c048afc13b86df6e0809acd536f401404a9dfbe31bd8ddbdd0d96afdef46c99549314ddc53d6f47af629c7802e6d715ec28d1d93e513d0a1af9aaea63afbfbb48f846797efd2c42545efd476aba1524913a9ce2ed650c2dc4c5cf6fb1657692cd1d10a8b618b059d2743e62980df3036d45cb0f8b689bee7947725b05423ca946a0a4558ca33324f7a3e11fbe400615a9e02b078699840659a5098317270da277745e90ebae476bd8e9c66283bdbc1760e63d4276c9f26901354489d8cc1f575d4e75d8ff910d9612c9c43582fdca2e253bfdec31d2bc4c652e1cc6f769e461ce86e2794c91688a96203534e524942485476d3c90706ff7c75a87411841192ea8430a9a5704c310ad5a394ffc2580118cacec230702eade0fe2bb70fd11475801f2e8df7ea6239a60812c695675de0119c6cdedc105190977c04495b799dce6c739738d59b0aec64d09cdc7af9cb708e5c57de87d952d033f511dee437d514ea34675928197a538074373c12e66ae3cec53641190b33ab9684fcf9a7eb896de7e3e48b28b585707e1718fd861325a3b829fd1188a257f0f8241e8ce81982cb81dd8766c545e25c82ac7c75966bf91278fa63af98472c49c1cc8eb49411d5e4f0aca7bcfb8ecfe3b5a080fdc84df3d1accb685bc9f345887f79386b9f79e71d97d9a9d151eb8848023474c3c8cde4f04acc3fb49c3dc7bcfb8cc9e9dff044d5b165f2073c4bcc7caeb49411d5e4f0a3dca7bcfb8ccdea766164ded34a99c23c6ad49af270575783d2928cf4c22f3c705b87faf608ec8e907b23e496ce6c4689a38e92da4fbe3493307a6a80cf990cc080b297a80a16e990c352a1fc9f87d7b2cf16ef4297f1669584d7c683c94b444053ff85162ceb8a9d4c2f8c0afb8018a7aa760830ca383e14b34f63c11a2aef7355b95f21eaaaade39a8004e063ad0e1b814ad3a48bd83a3a602ab8b866a0b9e3e64ac6ea15e59b16a2b52e5eb10b9987340792a779366c9c1edb3532ae5ab0232ec940b48d79ce98fbb1bd061d8faaae43ad26644b65fa8fd74b13eb24f82291738dba698d90eac49c9fbb8f9b3c82ef2faf159bdd575593e2b184973dcd2f72ca604ff1707d144e7f2797d8b79ce966be5f9be2d7d951e976684f4dc5d25df261b57f2d614813969f1f962a2c7a6b2f9b5477d5b52033ae302381ec43ef3cc2ab3334c345ed823e4357fbe5af4b414ea8d62e24eefe0f62d019662d20071dd3b06157124ad7e943fd19168282afb630cdafa0b3d8fe4575e13e8d78a5f75c4335222e53bb57fbda9697ddd0d00e0f794680fcbbbe90f8515ce9155c42d2bd6275e1a7a6dd10651a5c8fd50fd4ca4275aba2a44825e88e6d6301a9ac0508d2e164ee0d857e9cfdd983ad11636837783a462004ec3439b96f59dfc91bbb97881278a354509255de18dc7f3c5174500401b9e5da9be0475cacab0ebaccbf88fc225510ad7733f5b98dd823f812106e08b304aac7d2707e8724264c37be6ead5d52426338a09dd923a605b873c0f4d1593b3eb64027a1292df234a2584b61dcb60084fd5d6b7707c7c606d1162f3c3306a1c8ccffb58cf357f421801510ae1d4973a00452d5ad90164d8f386fc912bce180d6747ad1d890e5aaeda62cd31cbde8010b07496dbb36fe46aa62a29ebf2e81f5df3617026cf9e0eeaa3337e4661899a3c21cb66a1c3064bc4dcd8cfc2d7289cb1170623c421b3e27b0ea07f2f9eaa29205dcea92f91fe9fdabf6f8d76dfefc78c97f81b0e529771934f3bd5731ae160286f6bc78ff96c1bb574e826c46969d441f57be3b7c87df8fde5b60edb6f8d1910eebc3e73a30d902d5346d6baddb89c54f272a8f26227fc6e0aa9c5939a2dbe26c2d15030fb273b4b1f5ccefd039cdc999ef252b08f0886ee965b050ff58b983442b6d8e4f3c3a38f3cece9a1ca98bf68fb24193bc20a332885980a9b5665c70ce919beca03ca502e635e2ba082fb83dca2daed518c452c87054a554fa8263f184954bc01d9694b9e9459dcc3c0743bca686514b41d7f4633a1a56da4ac1c5d010736f2a88e6f61206deb5ada2591af40767ca6d1dcc2e2ba6c821496ffd44b13ad11533c46345f78fe5e7ce4c7647b393c22fd2d0745b79f510e6f4d29e81a08a99d724c5daea4663756858fa3883c1d2655c38202ee0ab01d06adc5bbd5c138093bf06d0c06801e13ad9fa81248a3fbed75e810369217d3d5b6b47d8ef11316f75b2f8bc6f0a3356691089ba157b81fb671460bd0da9749aeac6cc822daea1034934e2680a5c31e76879eceb421a7ebb688f668d11d58c7932555843dc16b2031855f4483609b3a049107d3aee9449dad8eeaff67498e73115912a9c2f9112c4a18a16d116adb2094d925dea4a2effabb4319470eca4d940117220999ac040d8ca38a0569c18544ab208f5f01ac80e8fd0c37938fe45781ff6e0b683a0b4d0c012dee5b8fc91f94d12038c08cf7435bf6ac45d3791f0b48f88a54a73a84a30b0fd41ab3ddb10dbd92121bb20f580f494cde667d3f283ad4d3c3ee8454a2d230fe4de62e412ce7c84d1ea40ddec094cb6b7c4595258c75481d460300401d59314b7a947675bea839a76aa45e25e21e0f479d19cf63dd0b7ff82ea3930403d532f2624e6f2e87841f55dc1d82c94dbb901c4e82a06c03f58e5ed3bf58c41bc0305d16d8804c4f25ba8ca9d0acce306c34e2f1368b5d818e1190ed80c0eb40760ea688836c1951a5103db9d121cf9ac8b9c73aafae42df5e7087fc0080acb4332c6a36b12855d08fccde6126eec68764c1d2286b7ac290606f3af3d9f947441d212e77d495392ca18fb87917de9daf0b49fc90a5d3be5e17b0bab79173e62adb0e7b8b74290d321aa4003e054cf87f87020cd863b0f685b3262b9d54a29218842ab4d73a54660c2a853506a9255e70a307ad57987b57bbc8de740ec8f066705838d4bc76eb73fdd7e4bb17b168dad3b3639386780d66409ac67f3524bdc748553099a1ee9fb93a45becf44862215fe35c42957ddf2f3b1cfc0a9101af3ab77e014f2328f9c16dc52020a990658a2f142dd174d5f220d973647e6718039fbda453b21c1c612937add09706822153e91ab19147d6ae863b696827bd63715b58f7f0d8e1dcebad2593dc54c5ddfa70a411e66af606c789e8cbd1943ff83bbea2e7f3cbb70e6804285bfe5310487aeaea25ff7bf5be3ef7cfe5751626b2ccdac457e0bc30f6a57dfcc1dff0be29936bd705fa9b28893d7b1d818aca6d22d3a2be8732159bb2995a8effae7e9cb80c6fe99e0a1a6e9d995c3b11cbc312b00c0e6fad916aeb9edab3d876936e910fb1aedf4f086fc64d7274c2c615dea11e9e62e2a4337c3d5bd8f8523a598a39fa2b104d27ab5b4037afbc5ab178e558d06794c9da218965ef4344cc17d3ba5d6ed0100005089ae68abb4f9bb1750a4fdf090262d902a51edbc2de59b68b0bb9e9befe630df6d5c6bf768d9312a789e15e9e40426dc1add729bf6299bfedfee637a869a669e5bf6e496eb204475ef04f0b434d833711b92d467dbae9dfec5d22f390fbfde0d182d6c3e070000a29d7e267837e6984d19cfea35a003264f9ed12ab98f3d15cb3aa52d1654bf0e949904611779ecfa05350932fccde9fe524b0ec0439f1eb41fcc562077c8eb167c0d025d65b1ae635921cc08aafffae90294f860b6959beb88739dc3934b94a53827916a1a0e2b6dde160d371052ce9845ceb106e10690996db613286d88c8db83813b5aa052b2334822d76411edd62bcb5d777466dbe3e55eb4d6a2624c693f98ac47626c7e13804f2cda5714ca7e75b5fb1967d8d4097139afffdb1884a7188f4069bae1b4cbfa1733b0a05c99d4680f71d23830864942ae0e1e1aff89bb2731225d7488e9b070b01ab2b398319ab28cdd68c8cb3d08ab052f233b4f4c935c661c1c2cacec2cb4bd1b1ea96492342c4d2d8ec0e1dbbbd619f8067abb93d180248f7fcfba4228a60310ab2dc1a9cd0f1bda1fd231136ae62e54129957b7d7e02fe2172e26ef60f7ff0a75b26baa276f2505e59ca7df53cea9d2b5aa910496ae4cba3402eccb7569a808bc78bacf23ef0f2f10e596cc738ed725a1eaf062e9de2b3e12dcd3ad38ee4b3365520c58a6f4edb3551d93d3afb23e3fa32b7a667dc3e95b8c73648de849200da0f98adb3985cb69d735b4313029178bf228f7a0677f4fe770cc57ae4eae4f13fc0f0fcf672564c7c2146cea3654a65179435e14ecf25095c229d6f021378309c5b22a1e3b33dbfbe05ff9caf43d411ae3b39b8a04cb16a608ee418a67a29c052a3ad0a90b160b71a16d7dddce9474d8187558b64c0c204366c989d6b3818a0f2eda95ee1d4187e21c2ab194f0c06ced9a2f50e0e6bb56adb2ebb751cf91a9009f35c2720107587ca4fdc340df8886211e1a1b40c7b84954e436d7e9160eef327dd16a4e9fc7e7615f873b98a2ee17f54af4976949e95fc8d174947d26fb2b06dd7952c3e1085652835506b31be4010076bdb47a7a10c753f0503d8ccedea23ee44c4b6cb70400e0c8752e8a57751ec41419c1ff09dca749a5ee966b0600980bf4b34c35a547326372df080a9d53186eaa67050038d2f3a4f7f8eec7b1598f359b64d3e13b7a8249f10000bba3315c0f27be969cfaf27a72ce56a73fa343db03a2e8f9d3a86a712f894fc4c1110436712aa5a6b55afa4f49402ec871275d832794764cc7d281808df53ad1799fbf5f54f54eb1702a11babb0b2aa4efd1504a2b303434ec9706d2cbb6746ad2c6de83e3ff2921bf6ef24ec9b341383d957e950b9b9b7e6da3f7f602c61e73a1211275d3a5219abd25407e2a6ffff0b65a5c4b37ad716315954d1e2c62af4232a7103cc987eef530016705000038d7b69af698244b73b88d693e144998ec95b7e0b8834d5dd0b438d7bdb07d4393c6f038f1ad352dfead94fe9f3565ad7c5074953047d5bf6dc182a54dd235b866b9490955301d20bc434f3948e3917f6bc7d4309d9e3c16df0895c646077b57f76e25a0efa418ee1b292916818c062940ec18baa458b7a3f39355ddfee446e511a113a5d8a81f9853f8a0e8360040cb99b4f74d1eea13cc74a7d3252b1db3926d34cc43714622b51454cb2cbaa499ac2a0fbf128d6af1820e8747739ffb738d01006aad98fe05d1e75c31bad74f63c41e05fa5f1a7e81562bbcfb61ae99e858c46add78b3f61d62c43e71fd6f4a1f2c0da2bff4ae8f7c4a3d3da96faac2acca302d49d5c6741fdbaf58ebfe4faed20700f8201bb8719f3cbb2fa32d4e8c33b514e5345dea7d0f9fb5b0345df88f6c8fa935d2b7e56b96ac1af83fa8d9ba2360ecee9c566fbe2c85669988342d451e64db424c4f72ac71624b0dcbdbaa439a040a0a1d04ec5612bf6e6258794ac653fafdecb60fc11e3aab1a590c48ba49daee48bd35309f560669c58482b6ff330b7ce81147119b9ab98797518496680ca8aa17598335c6f81d83d39a9ae6ca54112ddd423692fe1a53d9f51e62f95b9b0ad5f9c76fd65f253f05c81fbe9fd90eaed14e3c166d71dc99fd02e98635a84b83e208042d74794a11b79e3a3e31e20200008070d7967ead31d9082ab0af65a11a572ce9bec0ca6a2dd8bde30b0170f190cb5d87db9e4125b57a60c26b37f0422ea39e19cfee86f81be339c7ec289390d3512ef2d21dc9761f657b5c3be932d2ff0b212c8ca364963e1520aa4a03e042a9551ed7dbab6132bb798e0308cc905eb9681d701dd74b2e28edd8eb16241d9bf7edec8792ba94b4f5df704fa30bf3c3502f82b9be5c049d17df6e742a5e58f6e9716dafed803a40aa91fed4ab1b668aa5e7fbd6ea71e38c237d73401e2a12a62f6a61ccc263cecbc968ca65ca2eeea5b11937a3092b2f1b2a051b272f072f3ba731af19176caf09692a27df9749e2f5c0f95e5592edaec53a2cdf7d94053e5cb4c0c151367e73e67cbd66e623181cce58f9dd3f7b04fbbd0a7ab40819bbf16e08a62d87fe758e8b79a2e13b348d12388da9ecc1a53b290427275af168498f3a4a9bcc3114e44397876a5cb1a6fb35889d22a986c0a4904f0bab0cabcda01b281a739055c73e7492ae7a4edaed4b3b52e2e0f3c42a02331e065d21f542a5dd1f6bdb83f94ea30080d1ef7d0c147370853d3888dd77dd8d7b093495dfd49bc0c68b3303cde615e031eab658cd015d40801a10f741104210e003a32abd1fa288fc773eb0b0bab3f9d8989a0e4d68235b57afc2c231fdebdfe10ee95529e7280f7ebd2d8e9498a96d791c684ea46035c0a7de1c064ab596ab8a3125f74f44a98dd236899368a71743dd3376872bc32dbed515bf8d4f0d3f9aa80a083b4501037a41fc6907200f3d4a491e7ee7542e9d9aecd22437cbfb411bba38efdc59d803149fa43ac1c3eac23266ee7c7f935f5962f04152a4a732b1422020e1a06e5b62a5b9e2bd2376bed2ff702a5c658012b194418fd7fa6d269c54a621f81498ff3df40441439a1db4a35c983b29127cd59ad9697f3a6671e95bf43c36aea66e160eb64b20ea655cd5691370ce7256241039fcca9857e2f05cc7e5c63e70fe52648f3fa4302a47a7fd6394733e3801fb3888e18b15d353edae8ea7ab2bbfe1f4321a3435d471f1deda898bd36bfe3970a914e313145dd27d405f47ff2855cdb89ed1eda9f00e678fc407d633931a8146cd198cd98322e111539301173b96793b10ebc8f61999fef5bc6c18bd12716ac02b9c72bf21ca54641752144928434a3963c5765abd5943d7142997c9c0ceb8f418bd273161c2e3cc00a6c00e178bee56e5870ba13b5b4e63d47c31f67c569af88465efce36cd6576c133343c230fb0c505c6534c512713db46dddd85c5453637a3f39e8821ff6bf2581f8fee39db8827a31c81376146cca86da30afad17c312c72abfc3bda7c1447fd0b3ebc084d0fb2a3e860e5a09649c8da56aa152bdade2334e6729bf535e4fe4ee1a4d321755bd366d9b134c7f4708a5c6f07f6ef7ded09310f52ab3e1a0fa8e5cf67551d06f5e1a04ae1e58f440d2a02bf26eec7c439d1db1fc0eb17a676f6fd39cfcc002b07bb1e561d81d2f099cebc3eb5cabdd1e4abd8e0ccf6d2cfd89ca4b6ed471bfe4193db4f022f575de6bfadc5b6ebe59efbdba6d03633e79e4a03e374b73407d0c52fc1939d7a983c2d54ae77f5ca68ebc85133f2c535abffae706c9279df04f7642103a8bae3f294fdd8c8dd06f4954115b2a393734f4d38a27fb367da81016908341f497f7531201b4d32ebffe02ba4fbb046d7c9e4ef05a4655f77ea992b2bf30defc2dc04d9b233c334c19e165baac50288c95f1211538503a85998462614d1a19e9f0f263a2230354eb6c8c2132802b76e8effdf7e6f3e210a0d69a61fb363866d0dbc79d894d23bcfb90bc2f5a0e7ab27989296ae7963b07cef5dd40ad364849b5896883a8064b1d51de1863234e1de8618c9dea6de15c51368241d34926f3145dda7a62e0f4875698bc558f80a91b4cfeff2a61f82c0333f4068620dc29166e985631202bb243a5b0ca9e68f999395e88c44b35a8a66eabf2d0aac3c26af81d521cdfdcfe85256da97c54e14848166cd2a8bb644adcbd409e390e02bad4a5e61fef7f5cf114ee11d5027b17d580a7ca6a726cfe4e1524c96bb21ff24ef3923157f3a19d5464a1db74d409accd75330e7ea26f1683b2ba84e003e0128d5db2c3256a2665bec266f6569f911de8933c32c704e52a21b08ecc695d6d4107eb82fb5a8eccd56e443b9e653050b0a8ac13094818ef1113ee29d40ce9d04291b40cedb6a684374de2e6dcc03068bd90b2627f68f523f6277cfcf731b1f3503eeb9965f3df14100cb46aba20d123cf109065c0595b3a1e0b8e29daf6d1ffe05233e9e48c17dd3a8cd20f2b59ac79faa3b5f8f2d883d4f953f5c9efc5e49ee0bcf90e2ced0ee1a3f7701153a60faf7a61dbfe46f5958105a68210b1739942c00cb1b4e126f35374dcd4d3568b9f2c532c27fb35d44639841328f3a0fbd3abf0b4ec251f83461b82857ae582b6afbcea9df43ff232b1156c4aae46dbe62c351348b510d351d847cb708ed0f0800fc6bd7c97b8e64121f0644a35a02625e8c47138c538766bafe86df5ee22e7d99fe32aa353af51700000054b81a1795dfd173237e9cec71868d4a2613ffdb23578ab49fe13f7cb85caf07d9c91ca94d3817b80d577aef75787542b24c13ce941421bd484776b9082f681e86dc83f9ae1e36151252954392bd233be929f8c7cf3403e861565f3509409d85a2ee89632022cd972691ce87df0b90ac00b5004591ef458dd1b6ef8881c119f7d98851cb1695e6aa25bc8139579f7fdce392983769f4f1c91fb8162500aa5d546b73811b058dce871ec11a5b3c7f2e5559a4542e780f6153a01139bcf2d9274e77bfc2fc4c55bf9732b2453d91e66b9a15d9fd2275cd8494e550b642f6215dfe06f6d08934ba8453246d185b457e21357a7cc6164a10cf9edd0d7644e217b876725b89f6f89f641d0a65ae8492ac27a1d44e6474f03745e43cf4a2f2979ba6d00a070676de2afc6b2263d8c2210f9690496592c8d8e21123bf77b565a4e49b55941fdeeb52e089840c111e675828806a0bd848068aa6cec9e85322ba6938ca566cf5caa720c02af002b58dfeaf563a49e186ac3a7c3cfb36f2f8cbdfd3a58f509c4f56f060d8718227d1d524edaa79f06e640a589297075282b17fd9dff5ff48d1d00e854ee13fc9317b49fca8400a2ea1bd52d1fdd8246f9c95311c70844d3d27b453d7d9362e9c3b966107717f8b4671a7d3c37300d956c801001fcdf3085eb6a3d858858604d21f96a09b1ba22996025291291d04e80242426e6c415e58855efc010dc8b798bf19d60fff1d3857456913bde554aa9aeae8668ea36b780e053b48bf85f560a29d2e65e731932ef001500e7fdba62c905c10c758672a6ea7a5224d43151a564fc72e3b73736d4ca19379140b913a91b4c3d74f48bd279244339b3e54dd6c6f52d536210c9ef71618613c8a015fdd06bf841e50950fd08b6c5ec877fa7efe0b6887214b5d2e20f3e6a61177488c6b088beb52ce09bfbdef601fe93f6cd4ff57d17039b705eded7be3a454cedf1fd5f3e7171281347de39401727fa2af1ca425f2440b0000a2515e8be1f1b549676fc84914f6b6763d3b36fe9464c7812bd477899310cea507745ea8c9bcd9b26584d805842fa1326df5cfc00673bf48cf403d5f40326ab1363e46018de617d9609ebaaba404b0c420845e817fae93597cc3b3e4d22d613d706a1de4cbe467125af041a9ff6f6d8e4230bab59fded5e48b828a7ef6279b4d84b38a74e7b2e5d748c0b521fea1c945fc9bb6ff6a1c8743e34d5848f3246043983e9b7f56e9ac162610f279c4dfc9c7caef923fc861236b9b2a98e00020c8ca1f659bc8f72fda8262aceab9b47fd4162168b70b04b6c9b17c560c96332fb160b72cd8f40cda5b1e87022a4c9baf44fef27ee7fa69430f7f12d7ddce6308838abf9dfe3cdc28f75574253f6125136d43237a339319a208239f6f3641812247cdf94c06c5f7c6508dc781c7293775825a1a462b87846e8a8418d4e08a0237518b4bd9095789e85d47d3f1dfd0054172d9073580c6754b4a9846b9edf1ac26ffd4b79147e9488cc342761667a8462949836d252d112bd5dd14aca90093e636c43292d808368becd80e40e2581c008ad029d99fd1bd46bbe8df3fe2daf64a060c00606e910d398fa8fb87a3c04abef5d350ff8e1855570080a9f68293979811f9240627250377e672a5aa8749a9000000401e128719a9fa91637b12b9cccb29b88feee3c2616cc259246d11d9b1e8804ca7b0d3b35ff1b16c1da39581356b06bc5e32f596f817726c1a94fa69fb9cff95e98b8f59b87c4de1df4727bf01003f9f26f2c24edbeca5ae64d7adef28b9a4d37ca80200f80365053bd413f3014d1342032d7cf6f2df9125440f006062267798fead66e61e178f4b91138be2dfa7094200004b70ae77d9882d6dd45a6cbb67239c7ef9e6130f00f05ee159175f92194d6ab778dbf24650a7a411c56b484947304d471cf5d507403df5ead6c3cfbf2f83aafc70b6e366de3b4673fe81de41b3aaffe3ff27c061feffa52a333600001894a57ffc3dfc5a659976b49b30a974ca23f2929ab12dcbc56f24270384f92a34a0e09786f366155d0a3a0c199a4f640c6b43367f3850769b90a561a1788a592ef220cbb8168aefe5ebcba3cad19e1a7155563000529486e963f7be35805751064a1dd522a537901201ee5fbf58a587c7938adf18d91cc632322f9880aa5a8b3f0f6910cb0885516b052f25366efacea99bf935463ff4a06c6fbbf661f9aa54217196d289d032c6dd446dd2b343f93ea304c6ce5605f67c2b72569bd6ff984d2000249bb85144ce4f47004885a4b3f9322d8e0a24229f6ab22d4f3347ae2176264830cd988406904349055e46cee330f022da072366590c126f889f7746bf0f266f7f10d751f77a6bb26f871859e62b92c2659024e9c590f2f9bdc67e9650bc1196e01f4be916f540a64ea1d9b2087f160040f829527cd35222a12ef9aa6f692a16fd487245918c7a29789e8551612638b043c52a56f15a55fb950d90b0f416205fb161ac87e5d386ca222a4ba60f2bbb27c047634d76319815e55f8cf696b1250c6285c0b738f07d94eadebcfd8b433c7cdbd81fec27248395cd9d3e741e3c0f3a49da438725881f250a632f83334c06c1861707348646f8d6981900d203ff00cb8e010410f6ebc37876478b65f517cf7e18b3942252a1d61d3bc7e3ced2071c0bdb864163a3123b19524708d6855c2174094d1a28228761dae33da32f6c2008a87ee8940b991e4d1b2385b5901d52dda1b482d3c9a59f47f237fd3f5857221091104bd538a3bced677c473b6e71ef739d09da029952512014b60c65ebc8e63e6210ea82da04232c956d304ad1ebc031034981a45b5296f621a79d00ac96823dcda1576cfea51b841f170f434f285f03c1b229aa60d49b53efaf4e2d53ede93d6930146f88d22709a8a9cc37ff9b96519ec7429b8e7342c7b2423be0c1b38d2525b9e995e52f2aa52157a63a40005d88312f318ec02d6b186c7aad9d52b73f033ad1b8454d5e931384b14f08bf2a23a6a082f64442fc3e1571570a2e77348932e34cce2116b0368987af9392f3eccb6393038a91bd531a2304a8ca4435486b18f79ea89931e3847bfdf4cd2f4941f5e35b214cbaf572ce078e3a68f1dd0e231925bd48785ef76f01d330eac0b389e2b1a7fadbc9579493b8d489454558dc6e02ac23933147e0c89879e905d5e25fe763d5a9a55783b0205cf2d163a6ba10e917d05f88f084462486c69c5b82a2f94c98d16d9e4c4f3ba73f1ee6baecf212343860f1bb1ddccca6139b74a8b4e502fecf978d37374a2f205ef107a9953329ac04fdfc5ec59d7811d3a8a204bf7ffaedbf8d98c5d812b9490b7d14f5a04df48621bd4aa09fb1ba7f11f173353c84c9b4f98488542c9a8045b6980e3af9542afb152546c5b8f803addc5f52dc6469cf2278e9224bae7c874865fc65ee272dba82014aa9cd4214657586256d99986577e2e6788e541155be87b1baae7dd230434a244d0834e5b8e0bed18a514aa733f8168982c009c10ab12f701895a93c5f0f3018935ee8aaf3beed241f81e36e6bb1c556b27285443b77d5c3fba1d1ee59660825521566fdaf7ef2959eb6e5979688b2d426b16a0000e31e05528c60e64dd8d312d40c715bc35ef1aa89b46ed2089dd4566bd23d93714bc58dde65327b91b1612b8212e0ceb786e636e2cff02141575ab21f3460cfcd689b3eb703d1a30e204312667496f397d00274fac50897edf2bf1fdbb51db21bdd57f831ddbcc02148a8089eff2418b89a9f4d6ad0479dd1f882817d97c72b561ac128bea9c1dc9be16327661efdda8cf1dc2f0ae6aed995484bd6e6c3400901de7e5b7dbde11c51c9e839f48bb3df58ca532472686cf5b2a6900cd65c67b11367a490b47001dc2b076130d672e8fadcca14bbd7b0c75f1b8eff5f85b7de9532d85c867c60450023b2150ca3b33fd1798c8738d6bb4c4c82c24068cccb61206758ed60f3c8492ebeedd236cbb737adf645af57abf9b03630196bfa3ed9e8ac003e9f71d11f9ec7c5e4300498a58aae2863ef7b062799c86add809ef73db0973ceee5bdf9c3c220058c13346268430491530f5d4c1aeb324173d984c4235d2338f60c2bb44dc3f28372f9328c4555e9b52bde0e6914701a51fea501dc7513de35f8759725af0b15e843b83530126078d83725578c29b5f37d970e00f53c55bfe005ce193076955cd06cb42dddabeb48fc32cd9f01d441c3a153f25a56c983e242cd3ee325bb99e8f2a8462013af779926fdf356be01acdc652169d3708972fc685fdc63580c08d0619603144b3233bfadb69969a28b433eda0300b8a29868bce536bf1f5db6163d2664dc12af8d75c809ceaf0484d923bded6463ad9455f73618becfe662eb568ceb28c23a20ea7321608a9f5dfaac656d7561cbd2dee606cc79e8c0c9ba9b8c2c4c4bbe20a1e5fba504e658784ae7b8dacb17ca51095b562a8223ab78ba297f1d1735193be2fd2f5f3b6ff725dffd90d128bf8565236549d2f95641270cb87da23dd5d43e664d8552a5c8da54c75d8b87a15ef36a8f6e3b06b6dabe8e5ab3c1a31acade3a0da2069dc1608fe8566313c2732493502c1a95d4b0bd18809866f3a914e43825392e66d8c6cde8d8100f0a141d92b12fc025f7e59eee239b0372a51f6811ae3632f500c5a5eec3a469c1f321f376630c8358ae918bf08477262e6bf8ee49fb1486f145736287b2608feff07f6c31d12c2172537aeaffcfdb6455e454f7c64c3fe8d98fa87d0e5687f9919cef6d04e62e1a6756642945fdb7b9e86ec2a99be509217655478af664dfea732238ca4733ea528f77f9d0dd81bcfd37e7355d806239199e880fbaca0f85ea8cbd4487a0dd370be1693cb77c77b08f1efdb9b0c1993a05cbded293d5047b831ab4e076f4f01cd0bddc3ad001f9f02f953cf82aed7d00d905a6029778bbf22d29e73897a6b5d7a94115dd6a6468aa65ddd44bff1a4d10554ccf744d60a5577a82fd2f9f676ef06959bd4ef77ac30ec99686a7495adc1d4cebfa8b13f8169ae024513c360000dd3c6a113e77dcb297c2b86ebb2e2fdd3f7fcf5e538f63e08b3b99d9473231bd5dfaab670f0625eb1ba13eaf414eb6142afb5312d60c307e43669d44fca5e9bf670b6a7f1326edd28c2ca65707a7e23a2266f305ce4fb64a67fa753971122c6faad5285d6f68577eb252f00b64d2e00211989c5c8ae180cca30738ddbac62d9033770d59398fd4acb39babfaf554adba3ff381b97a5cf6a3f6c6732aa80780803719e0ae5561d736f371b6a341b926230deb7cfab8514ad46eead6bddd83d181d4c09c48e1c77b486f0cf1d6aa601a033d13a35bf5ce0fe0431c56e13a69498c2b2347462fec66d605f0651877f933262db1937767176f4966651286ca05c105cb1d6babd94149f854f2d0bcfda3e264268005ad2c58863e142fd007fe8c96f17cfc897a6e43147e6c0463318ac72e8c341416a5ef22d4c84c569510450f2c2b73087f608dfaa9e3ae4f9df3841038a514476757c89c9b21f0c4b2284f6d4b208bb58577e9ed21465864cb40cbfdf1d039c2271b87b1d08a0e2c8cfff7b32e3b9057a52f596a6fb6b915f72730111e2b3aadac6a0e206045611d24376f6510efefd9bde69e39da6d91acab2ff7fd23291fb5b75377c4a744f53ebd5346411c6b4b5f86d181779cca14b99e66ecf2016e115efd14d83a094c04edf093113e7cd9b1cc08e9416ae151b6f156db050681393e0db1f8173cad4bc65c2e5d159df2fbdf26bec041d83080cb2b3717c1e5abe21f36b7e05358916ce6c8276a2a2290c5c17e95cf3274d0179e00aa1094cd1ed523d8b0b388a805adb74619637ae347271c0181dcdd3731350014852df523dcfb0447a10e1118c6838ee60aa822d5d122f693d28fd7f823f4c4119b054aa9aa4f0a26a7792794ec1a2702a9465e2d52df434c2edb51b0b7eb440756d263b917c020579c12286302641011fb1d411cdc7c454658fffbdd2715ff126f90fb2c1ad0080bbe5c01e42676dfeaf84d00cb35aef099444d18e120da3008f37a75e2888d159fabed4f09af8fefb2daf62c44126c16b5472e3edb267fe8558fa145f61553378f59beb23b7a00c52905ab8a8d098d08ec9cd36d0b86159c443f90a4bb9201337babb991fd1043b6562d0cd5857f0816d36bf6549da196bd3fbc0b533f745212e055b3d86527e2babb8ddc57cbc75c51cba09ec7d1f8a91dd6c1a4b9f2699f2e086567e2fdff327b7cf45f59ebc53cecefcc8dfaede1d8fed7ac1763b71e860dc8c8ade4c1680146fb5a19f9f90d79503bdce23c3727e85819ca97715fb8e40a7e97445e86d6c652eda600a36850dc2524abdebae39991e647cfb3644f079206342802aeae32538d053cb222d7b9c814568e50a148159689d0e808556a802c3561e50e798ece5e99841ec04b75e44ed1e518bed5123ae74d55f813c69869ca25c4290ba77c61af7e14af9c1d1a0e1c18732546f7c12ab931a9224e72aae5e4269e9cff504a1eed805ded19749a73b00ee509eaab8d0907de18f3c4d03c5ee72dd90d5d6f3e9d3983411f115ff5e400ec7d6afdf90973c8cc6e7ddf08ed7f6c24f4d6fe670b8ff17f52c5a44afbff189d08ffb327e603484c1ae91d8fbca34519cc08e1fdff6c4eeade7a1b16443a0350721b2b4b48013943d4364c1d43016d3ed3b099c20411685253ea3a5598430b1a5001c306c0d2fd62b8b43bea572631331fa99341bc3922c0ae3e1844002c25a50c0300b08939ad84c61d36c80c50023f72ee0602450d044c011893d4a61208a09489bc64649c435e18d001038ac2f20d60fe7b4f99c53539fc2756f32da32fdfc1840eecc7b975662dab6f837f9366189cf2f5e385cb2e748134215ff167f5906ccad6ef4081714d283bcbf0866e0e2422beedc86448f2d0257b68383d672a51d1c21e4decefef2a62a8c28d8977483394d2204b67fa5efbcd7049c71f5edb8a344820bfd996c0daa8034a30933cce1b4fed01cc9c18fe37ff655a74c26231d437283664ecd666ee5073d18ee5b78b1cc405484db88178a0f1b1bc5630b0514663ca107a7469b27387ee42c519c6de017ca7dd716ba7f2b29859b9656c84a6d4cb157ee8e7f7e562af96cedb6c9975169ef276bd6ab22381124c752b34b57c6924a8fb9a2acc54da2486368145e1f22849f34def96f2c2e74861ec6b6789d5c17ecebd3c413edb5e0ccff93ea00cde304209d6d8a3dfe3567c5c0aefdab9ae5351e2c0610e99212886218ca3adff520a8f84d46f66bc091c07cd76599ecadca46da5d7e527d431ab1d52cbcb48b0051d5894ae6fe437936e436ee3e14692b54528223bbb161ec3f0a0962b7503e3e72790c657a9f74105191494281c597ced3b123eb67d38101b1c2beb622ee294d9295a598b421318259d1314e398cca9f7c052b82975a4d95d9b43ace29c848dcc1014feea4691e59c87c10a6bd32b3cd99a895a84b35afcb42621ffd162bbe8a32905463c328c9534393b18198e9c64d45a387b82f0f908f6510468aef0741b0d23f2d81cbddc5cdd096dcc3102e2b61d96cda59e1cc4366ffe049cf26ce5ade73382e34a6ab995c61975cc182e4167edd1b00e8326eefb63eec4c40bccea7b2c2fe457fa002e053c7ed0e71bf81ca22b542b08287e44c971e90f4faffe8ce5fd2521725f2c78611e47596fc5e52d6e8a151921b1b3aa5bdc3c9af66dca264454143e64d0d9b1865ddda4f9cb4956f7394e380fc9a0e98ed9e22906ddc032b38c2d4ca628f8de13b23efe0baa748be450a3400ea353eabd8a4885e65d41c4e3233e1bec1a73f5b0dd2611da9562276704bbed559aedce7f7abcdcf59b0f75d0590faad5f28a0fde649447f5fa09dc7b0bdb802b4fd14d8c46271911d4d9e35cf203669c2d094636a7538de0df9563df920fed760be065d79c64eae505d9e9fe841affdf7b8a68e413892fd34f50c5edac013533cc84f9d471108621f3577a2e2313e0d588aab8338a556ae0e22c448855bbabeb74258bd15bfc7ac73447c336f83ee5a20dcb6bf62623cc66a1deb82a1f7cee98e125fe1684f90ad6012927bde11d9325341b8f1a66f6910cc3dbe6a2b512565d7f3a26eba18e7cf47acf87896626e3d6594cd8344f4961887a27eb9fcb7bab784a29673ce3221d75f27aea41ee249edf773583659b6187334a28c2e7838a61f5e76218fd9396d82b1420ff30183988bb46704c0d3e062335d4d78aa9b0f0175899ee7e8d671ca96ef7f4089c1b333a101b0e868338e6e400d146ac3c82156422d15aa837c1b031704563c7e3ea352f01af0e0100fc1876e9c6a59dc6fea37ffa5618dcd49ed013c4b7c899630904163af7ca19456db0a0a7ca17a7fe2acb1015dfd55493368d5fa2124bf439d832d16783ba6bb1c0ada74f7bc2c7712291fb371ad38f820215fb35757da1605d2c65991328fedf26428be477933d54eff730510166339ef1db52cc59a8da6b292b26df73a0be5fd10a628d85ced318100bec5c155cacb8287268d7eb0e221eaf14c9939bb691d7ec92458b7a5c9b14c280641d824fc2e40f5c36322506af17e401f3331734d6bcad5c384d0a225970a69e224e07e26f9e450fa16bfee75788d42803d38c49ff940f34fcb968cf22e82e66e2622de0845b25c98fd1b701a591e52966d8e9ad69a62085c2856ec8e4fc65865094b125f7746d8f8be48377fa9ee113ba22a1110f88c5d7d38ec227a76b227a3b4ac90caab558f3631dfc34f079c52b37fd7f87a7209e5618ef7139e9a0e9c78d0418e375f0da39c6a7f84103b2bc229d53e6f0a882f3a8818f5ec5d198e2aba816a58ee7f824e5e0a5b9a5c73e5927fa713940af686e996149e5ca7a4fab088e973df4894650165e4fe9e65994bb3fa6e9f72c6ac528821d5235efc6b395410a739cf1365ec866d97101b90acf5933524331936219010080b22777751f5a41814438b32c61da66d462355ea59518198f34fa227e01cc2af032823c029375c59cfee6991ea533134661050ab45ebe1c14d7b3c20febeb4c33a9772297114a339bda1ce5bfb8313f70c71452e525ad1b1eeec3723b3463b16a2d121783357fdcd0762ee5bd02d2dacd41df7b32d0063f926593a161a441ac20da620050fd1de48e710c7d46714e27338144ecf46ecb3593da33f4a44c429ca3eec521a5982d129d3c57841a8ca02527268471c3c01430d06d7b6b1d51ddc83e9cb89566709eed584a3701221d62423b06b56fc77d242839352d2283ac36f1a21545f3fc6613cc505c097b1bce12c7c6f062764faf122ba5bb89b36307ce8d492de6adc4426d027b3da6b4e9fa9db0302826532f45bb1e8eddda3788b0975c50e01a1368fddb7966fa7832cc46a5c8cda6d2a708563a3f83a033e2b63925b30e4030e08e77e967b1858d4f5214f4a5eac2bfcf1d3c96312c539641d85e21d19ac393296d115b311aa2f02ce926efcc038b1c243145c6008779305afd1b40274ce3bcd3885394e5ac41114eb7b2a9aeb6704d33b95500238aa5be9995f3fba02a3343532dede75f0600a0c243e967dffcbff19fc3f25d2da78d64d3342aeb112ec04a085a237d47701a9566de132219f7f50e49a6af272b872b86308fd6190029548461139ccc96549358f2a170737faf1b805a88e35236e83716997b7ffdd877c46becfd7659a9b659b2d1ae0000a65e415bc6286dd830e59ac14013fb68ef5ea38746e25944f4cc1ec98cb308cae5cf0775dd334aaf1fbaa88fa7b5cb7c4d34fa178b43f1c0ebed6a9ce29486bc6d98c1e1445ed507100a16d4d5bfba422cdd1c26b3c5c4bc7da5c2023ab97b700efc76bd88712def14d37a96af0aa991459a889e49ebfc23dde20050ff961f3e7eff24a041e1cda30a83d557d12deadc64610eebcd947749961bcd8b2f599faf88b096a976679e9c0963dcb79a4dee3f20a187f3be603c65db45a182ec66a5a64f4789e807889d7f156eb8211615a46a8ef24740e1368715fc6ebc9ff34b903c8d0acfffab75395b3987eb61a1c2ce0a942233006031ea80e44dff1c05f6fa365b0323ce872d6b08076ee2f1a58e824b0c45c0f1037b578b6f6899260a2993a25e96191a635983c2375b67ae6ea7cd69b0775608b46ab00c52b220edade1abfef6f1367e1b2f1d5801743b0ab3c18a66843cb8ef06f3229c405d37afd087f21c3aac57f83e9c6b901adb04000689012966149e6e4941603e12fdded9adbbe0901e46af0e3e1616ca2fa68ea16462682f41a4d020fcbcd9ef1253cb6c11cc9df7979c5a6ae3070bc0215fbd99a012da3572fa257b08ef4c1eac18998eacc56bc404d0f3ece2149ec33aea1c0c1854f248ae00c498a5787f637cc5a6010e081474048ea6d33162b01b08e828426884f682b907ec56a62cb06c2a1256acaf0e66c849ee547f04fbedd011a458a31e796cb0e01dc90a6ef5155f29ec372d4859b4308e92592e5682a82a0c0d800b955695feff778b8e0c2fc1b49d419e2bdf6bda68f969e1ba987d76912af79a39cb18ef91e5988b9123cb93ffc84b153444aed43a155ad9b56baa96e224779a24e9bc31d58fcbddf651970bc3e5a3d674a35c9e2a50cec63f90a649c328e0d5cf79046b26d9c13b6f5d3a3416b2adaac41543abfd2179936634886e911bfea93114b55881d41a42526997d9a24bc17dbf5413d109e897cef0df6a4f0018b435bfb0faeaab9d3a2d5e91ce2fcad8b1d50cb6154ad3e0d086f436a1fd152474ee838d8fc434b3619ade481b7f8ad1414e2af481ab0a0b5ee0eb552c7bba199a42aa2f3233dd91ddf323ef032a1fa05380acf581e03dab37068b44136bc53e95f39c9cdcc490e9039ff8f5a78bd65b3508aa55254b6f1930b716a9358c7221c7728ffd7509a5b54bd860a6c96b65865f42a930d48bba9b4ad476d09dcce6213704b8d32d9dd45052f8501a1beb4f10966ac20278a0602ea977919926611a235407efedd5caa409fc6737720cb9673fd0df6273f471d2b2733a02cd449bc526db6e93b772eb753e322717ecb4a8614c351d0df748a50a5c4e22f75a11444909fe027c724abe1b8f6cc4a8413099b1c2ca41990924c14d150d6880991b72f42c050da815ad83b9cb5320b407770c089621784f71255b234bd35e501c4cc12005118810b5006b40b47f3b2b55e622118f99af0a20a9338b5207d7018ed0881d16dac61c6322b11611d320e224dcd71238a8bde470f140c3727cc7a256f8b3200812b916674486694f218168b13948d3c46e23b620e67b49cfc03e0c5214d2d93a650f70489c6bb4012070d0807276ab5b80a3f5be186cd1facad01a47f7205e39b35373cfcfa235cd4047f0f310b2acdb28a6200a84a3d0bdce6203a23471022d7eb290078a287b5b20f62d38c645f95bb2ebda72ac8f0061f4d17afde0205625e529c289e78936438e860da668d3512984572043df5a1c688adb8fd3e7f5fa08c219b04b4e94b520025a8ddd85ef6348f9d4f30d81ef8c34408dac982086ce1e2f7b87108e6f3fe5130dc876e8c87b42fb20cab7aa1942ff36c3d9b8e5372400ccd01921d3246cd862948b0559c0d631afdc786591e89a1d0b538d92be99942d851323cf814eac2d7c09bf3366f621f45134c88d85d1f164ab3094e82a4e012cd995bab6de880bc9d123628079efe328e99d7e1dfb57ad335717a40908e7e609ebe78827dab6c87dbfe115fcb5ae705a0bc826485ca13eb5392cd82ce0bd4c2a18a4de48af4012224b49a8e4ff29739cd6e57b80a8b914941a1acc78528cfc23598efad3e9c26ad9027125d26e65a6435754046dba928e44d9efbd79af72a12b304d8539842fe770117ab04f8673b48eaadf103a8edea4d900e6a3998c40f910fb257c676a97bf345bab27f277d47952fc835412cf017de05901db96c22cca3e3a785d46de3e54804ca3b22a9976f162fb422e8b567682d62dd9271c82083f3f0a98c8a4a4bc9514a03fe6ba8528ca9ddb81940e013f29f40751423ba1026a070f62f86e0921832c7d7261882e283aa440d3187c7e877db782123082d413673e29ec4cabd5d9cf67900a7371da539326803ce2bf616e2372d0ae20c1d6d5620f3ce900430ceb8240bf73076b005e06b5cdb3ba40d57303aac873cf82243ab5250a08831e530dde782b9ac03f020c563281982d684d99f398f980c61f40bdfd20f2f93c9e2aa325950936f6b876716d6bb6ddbd0813879d5a1f6836552fd321368de20c9ad499bf2f64712f44ef59cfae7fd08520fe1996e6e9bd16dd29cebf3ed6bc2d5ce0365335ed20966d42d6c90ecee1ae952b2fcd519a296dd290f49021e9fcda3890139d8b553c4c76e904c4c5fddd8a90df6ed3372f8c61b93e736925898ce23674f072ab88cc58df17e5a22994dfceb4fee0297660b0121e32c3db08ac04f4e6b4cd418001405e61f3b2d86be4a8e84320fd759cd55ec3657fd3b10808ef2694efabd10a62632022d2faf2b9187cff72119d6e3dd066a5738bcc1726ec8c4e49853fd57cd74f1f585e9a42042614f33b5b1584115f9ab4c0a8c2cb311a2123853e15d295ed6c11910533ad9e67802a410c51dcc3a10bc8ecbf4673362a4ac80c3dc92ad47c1ecdb74568ed660e5e48ed53dd401c59d2837ecbb798376641a9c9f05875f7307fb5c8402a6d84050c8f926129b1553befb6bf54504c2ac0414a0952b78763dcd04e5ad3e580411080454d3a2e41ccaba9de72717dd203e9945c434e57d45b9dc05a415a61f26038c54d43d1f636fcc472efc7cc79371141b0f90ad2ac602809334a7d1b6f221cdbfa79f68f40a28b646ced148861f428bd990d52b929410035e51b417078f5cbceb6857fa022781ba5ab6f873c7f9d13101981206268c76ebfa44282a0847d7346bb91bd62b0d993c97dcabde0ecf434c4581f445320894fe99a8c2b10c2b17dcf24a4dc80d70f5befca785e0e3d6b173890dcb643957062f3c6bd3dd1b4552eb7eec533e12a10b980ec877533d4331720bdf82711317a001af91855104132a4c9d226100e5a54dbf7899250c409d60c3790506295063b6ee3400a2194e5b8ad92e3fc8241234813cd6d5ff87f60880e272b4e7991300456aa4811e21b1713bc2b41ea168ea7fdd692c069b1dd1b1b0c42348d5fe4e39f319c55ae5931ce6ffde4b6ffa8801dbafa088e1d95fbc6b30e9befb6b60bfb2d0f64022d0281d0bdf6ff44b1221930eed6c55e49250ea8200ec22f345d1abe1d6fafa002588c8bd24d442cdde40fc2538bec9b01574890713269fed143c13774278406b2448b2cc198372c398eebbef51a8ca05238b3af013e7123d40568cee2e9a98052ef4f1c42ecba84a703b2e7b07fd98026ed27a76e327d6c7d5b43aa635f1604f2abe1e23150e74435603526dcfdca56e3449f9e1e2db931023a1b6b4767844ee81716e8da9b85bdd2cd8f8c932986e74b5f9f107d2471343906af6bfe38497e8b97a8d0f9491dfa531881aa12a8a976055b1cb48217e0add0db58eca92e44b2e60ed3f2c2a4bbd11f4e5a8b6831d7c74ea4c8c61d0a0b729fc9e59796bc86c90fe0b45c19ad2c172c6a726de8253ac23fb2c1b3e736012b3bf26f2b976209529dfc7a3cf5ab919cbfc122f54a2c5212672e2a810d31e5e0d11a48dd9f9a06718a3c89c90b064d2a1fea52bfdfe631f6467262984b0108252fe48560820b1659f4e72df6091679dd22f9951176dd4e9ecc23ff4830015174402f0c20753e5e8d23c96226cb5db790762ca5cc429fec81adaab9d0053c2393093af1bf77d05e06a3c7794b739575781fb53026e75bd4973418326af82f681bfdf2cce3693ee4e899236b9fd1e21e63314766296581eedb1731c356a33d7077d2d0d5b1cee32efe6520b2427efd17d8cab4896849d159682710f25ba913cb1643ee2656023ffd715ee97a358cd6fa6a8c395ee959f7f6eaa22558b32514c2c1b8a0451c8135595e0ce5b9d57370719b1859909a25a2bb61ffd739ea8138e1f63e04fba7f23bff6424c819bbc6f90cb6923e7dce20b8bb04eb7194efb626c7718cd42271e90f86df1df5a6a70dbe01acbeba97fe6eb72be7b32e13ecbf311b352b4a23770f6ccc6c1067fac4870f132d922f91d720414418688d088c923b23f6f60fafd156102fabdb856d45f1a01b7ad3b9d999e378ab32fa0a9078ea3450d5f31e4cec86bcf715b877993f904111102373fa4c6af375817e15622ad80adf5b46118b216c50bf900d73a2cf54e3f79a6d3798b103c4f3992b457aed151a8591d12bae49550846276f601093c92da06ab0104eca52131c9684910245c1027bb32a66a9cd00d9a95aa6646f15e0c10a9d5b6c30f4e5007a04e8c01609f72765d00f2c836e13cf3ff92c426281a6571776f101fa827aecb6b53d84276f6e04105edc13a73a229352467f30892099e785379851e8f4af26fe219b3029296f311e6a87c3adc8af327551e8743378caf0bc88056520ec947307faff45408f403bc03ce4c39d6570ab23ff51f8f541b9ce12920e3f45ef7cbe6e0bc902dc144219bd5a0772ead15e36800cc555b302599dc32021d0e780971838889df14574e41797e2c548892320611a80ba07fa9f3498a09b7afab9c39a5995a0d3205b3f9f37a72d50a898b0a9bb754f369bfc111b31fe202c99c55904d5475f27e8a5c73c33c4ad21890d3520f507c8a21ed0661de247093869d6d8808afdef7ea0713c2a31f6d7a32d88361107aeb9df51934868c548ac754afa354b6a8d505f7f6899d70990e7cfaa44b1c8d8c62d46e103c02b6d7a8ffbb683722c349c9680cd6a8b4c37372880185920608e78efb522d1f7e97097e2548bf14be829b8ae51e920e744364928c67d4e754024d8eb9cf47c8e543c0c98f016100d52928f23591199d27419ab77490157a2c8c2a5ca2693f32c3d76baea481ff0febd40c14ce88a4fcfc921337a46c438fa195a92e9a1f0dfcb8cd0691d1aa6e1fbe2b9a9c5d8f330cb6530aa24672dc9c0435c59ccfe8abe94a0a3936c1cd6d5fb9070963030a4f286d326af79825f0530ed932c0226977ce2d686b60928a7108e560e3a5c212f7d89423ddbd2bb8d37c969efe0736770d94dfb2f78caa4340e9eaa97e990210b93f00036c0a5f32b8a26ecb6a709bc97486e90f9227403a2ad950f00169dcd73038a26349347345e443678e50dd5474e3a18f9bc14cfbd26ae46b9d2052611fe8b618a3b1b96c698c39ecade0c8d2159ca6e2844267d741cf68723ccf4d812b3a6a6a730bd639468e7ed46e6e4e12d9844153fc02ccebce9d3e820f26dd871e222f9771f954348c238d707afe54a3c384a05e2ccb104c2ab7a0d1c325e2395429104261a319453a37488bd0582606fc9d7cf915b9357ed9f7cfdd113c4ffed2c0872f926452e858e2b1b9ce24a5c4c7eaca666d7c301d2a8214f9d843f9db381d0692b263a17b3eae55e05124bc8963831092142d79044ee37c2d52f2976940492d9bf0e3ccdcb13060ae15bc3373df9670c374c8a2dcac766b429d897504cd6738c20123b4ff6d7d4cf6eb3c515d82ce38c7c05b0e770488405debedecd4c1283495b16581813ffb926d4e1a7edd2205631b20550ed61f49696e944f66b70a611680828d0c4724b19f02139d7e42afd532f0299de0a5bd090bd890dbbe8128c806cd615305d0d6a2e1ef1a719a0af2551595612d95f5afa3379a3ad584775a65ebab80ec43d99e004a5741c1911944bc08a66b1cc60422cdb174c90a087a0669f97183b5f96d12b3a0e8ac836fc92ceb5a0eb66a541a823d6785c0ce1d7a21f44648236796019d63e80b85b4e73f8dc584d3adedb3b201dfc6b83876d0cf9cde40294181cf9bed8dcd15320380d9ae795ba0cd0e6d4f198510205c99ebd78f920fa3f16492d221b46ed37fb1f40acf8990cf419a28620aace37d16578c18dc2665d2702a3b1b57c33645ea0e4302006cbeffd3526bbe6179778ed89aff126317a77e42b3d63d2eca8e6d3af3e6217ff40822f91dd8f6526bda47250f2fad2371c8a0c1184c8352a9d8a11907f3c16e1b761f1127610fd78af57e782a02c2642f8f1f31102964a352bbc157043cd38a58024e270de9572a567381bcbef75c22de6ba5e225d1b9eb83f223f7cfde8b7f27b68a78e736ba6585ad42dfde03ad0edb9c507091516c38f5b4012d909c436e0329d4b1dc3d34dd4583272f3866dc4ddccebc33ee2cc2860d19f57c5148bfcd8225961b2e78b168ba691b7585f3f9b7a7271c62d32ae8a60ec1bf0aaf4aa73be457d497f5f7e33295c2d83b33ec773469cbef917dcc34959dc632ce65617e4b8c90e61bd696fb4b534501e93c330a9c572c4791a7f0cc4a1ea8a52dddbab4b2d9d4408fe963e504a0171dc985caef11ac6f5742188dbc463b3288af38adf468b7b9c9862311fabaa28e60b99cf97d3105e3ad2159c04d0f91b48900de5322cc866b10213c0b6f0d973c38986c9961e24ca36150e0e5db5ba1d036c9af4f993387968c0184f2aa0fff3c4ad4d20e8026d5e909e34f27917d00f1502004ece8f40ba26330e03f071fa6aa0323fd0c8a4b7d60b0e159c95098ce5dddcdc5328ec74542597bfe5c7e6c7ffc4956b2181423d64ccec096476faba387e2ed7e9a3ba3470d3ef1260f3af4fc0606cfe1b2d6c414d33361cb3dc163077842a074a021d34cb22e1aac5756baf88f0002d0eb78603a8d8b93465b8b78b0bab925a4b20fc1179ccf9613c8af23df59f192f86af0f714cec3b2e0aea708c2a2e33eb4a8a39653854061bd588c1ae377acc9b555a30faa36a0f21e30bb87dc6866998adbce0e3d880f969e5613fd217bbb3bf38aee1f9d080790defee1e806b2eca57706b9f3912958e05eba6c68a0619d74b06d54ef0df31bc0370dd18f7c55093b4209c6472e9d0721daeeb1485fdce0cc123621fc8add6082bf4a7f205000acf350490df933491788bf205fd2e90939421904deade3016dd1df40bd36f36b9c05ac5b8438409967150d835b3e3ee413bc7fd5e2f2427c6570e3e82cb365c267099c2e517593e6bbe299dab49d5c3ce93746e48580f5016df21e65a67aaa599faffc21c999916697b06f35d02c6f216a50367bf2d7a90f19e3585c48a11691ebbe45768ae84e2b399ee8c13d4a7cdf1e4e77b36e8f31acbd939883206a38cb9a441f104f7fe5c94727a47d150ae46de1602d7c6a59b48fa5413ac033dc9e73c69ea05f3973641b1231e012261c6bbcf14311c7d5c622229ab03a4225ea319521b65932667673e61d49e9c1d4ee08fa4b1d199490af254f16535ddf7d049e7c1af4a51fa5977da3b9cb0295f914e764be5686748e1efe52ab519af480ff10609e3b065f8688656483454c172de768b2cbf30bd7da534463cb03090eeb35342ebee8baeb3294faed0388b76fbe1121319908a30b3710e916531091a48dc6cec41ea4816cf479470cde3d90ec83d0b1415383b4830b98f91a0cd2a2a17fdc6ac5c9b3cd8a1b21b987154562881674fd4546fff00008033f2e6f43fc81fea962468c87e09e079fa19715b877aa0120e732fdcf366e1ef5c69c0633ae8f324699a6782c6db8fc9d155b40a7cd131ca667899bee2e85de498986ff7135dd7a43fcc522aebec32308f8185410aa058461270e36ba7344a6cf7c3e27406a6835bc77b5922548b0aea960a5785e209a61747bdcd477d2e270c565a08082b647747b4813c4dbe5f3750eb4db8fab7a04e544fa2ccece23742acfa2c6a843eeca9f3582762be9d0fa0a24e68e92b5641c5d2fc4e222dc0228987f6525d35196d74824f78686b9e1c264dd67ce10300b09b03c597b3ea33e863a62ab2d81b0076238cf91900e0a4b0d6b91d22e9872f6a360de32b6621372f543b6d5e87470c79eca6da9c0464e35db9810957ac024f0f4609d930f0e1237722623c61bbfc094f5cb1fc3c1a8ef0c2008e06757d783dacbede5b7183c585bd2dfc595e410814c4dcc802233c06adeabbff45125b672d9c6db1d3a2285563180bffb413bc2f04b86f9832fce8bc43be196cd25eece32c9faa64ef87324dc86e708223f9343c3e192b0fb8154cf53224da5afa4ccb378aa4a4ffe2f6a1fe11ee793b1d727cd9059e416517b0714cc8aaee452034c4c49369f64bb131464683142076a4f7368d3e51c0daba0b93953e843eb623923a2a133d10d50beebd6db7af032068b95aaa3bb7315cc75477312e1901aea7c906e1878bcacf7d437e2079225aa2e10c61e030504c166f84f6c69299c093c301b9678e0e72560417740ecc7a35aef0f8943c0d7b75fc22fd2e21255fd3e8b1fa85bc1992c0d36a818b5e67de5beb9a8349a00cb9a3b7fcd2258379cd73883268d65b170b6778065528941ee3ffc2fc35617201bda6a2498c5c9a6f70cc1b3683e0ed778c00c65cd946bb084612d075145a423b19b06ee6d8fb4340e7188b443614460a10e5b9c320d68fae5e3fbd5a3dbaf121908b79a06c7db2da22aa607a60f406cd01e5782af49823adbab86d20b60dc139a9ff591947e51f1c9579d80612591665162e95840520e0000c9199772fff083d185003dbcd1edf24d645651cff070932199e65f9bc86395c51fbabbad321ec0347ed1c46f8c927ae589545512f9c8527a63c496a1353589b81bd937c7f2bfb2dbdc9097f44152ecb7dff3465181e5a2d9d5e3d1e7491815696986121057abf2f835fb28036d9cb4b63e321a9e58153305b20e8b2abac5779cf0d07c89fd5561fc4bebe607ecd5ca16c421d5a592cbb3d49549223e47975e8b1d4899a5261e0257b047b4fd5056f5efc4c6e4cf9b62f8f5e554dfc1037f9f009e3a3b99f046e235d11fecff661aaefa76b79ec1d0d8e4b88e93bb8b1baed0b8fcf4e5057a45a29c6baf8d45d74f9d07285a365b1675199ed6016407eefee73b7ac47c88a18ae365382c834b4d661eacfdb132ccf081c3676d20a9a529271048437a9434299fc30b32bac0cb596a09997376a25674cfe61eadceaa00900c0493a456809dee502366e2c44cdbe8acfe6e8ec45884bd335801d3d3414bbf50acbacc609da98bbde2818aeb375bc9e1b060700787388a37b59bb80f9d7e8d358acdfe093c71f5b021ffa48bede56e9b7e810b38732abb68d36268f41a34caeef5840d87bc700005e22f811eedfc5c91bfe8f5aad8ba21666be967d4f9e9263d12a860cb5e76b221526120c56d0a88089c87ae7adbec7a59c985720d8bf76b58fa9213eceb75e9602022ebc1482050a21ed531a1b53384437337c953fadfbb4c1f87a3c92db42e6ce3a6a75b316487717f2997a8091df76f469307824ffe3157978b43b38937b562d0733bf0e34d46c22bb900f313791ff6db604aa9750971f83a1ff08be8f6c1d9e3124c324a56ee9131952fc85682719c0c4b88c3c8e88b909499ea039794a931c16000cce37317ad41905a64292a72979973d6c3049ffd617052a72db9a7f19e40cffc82f7ef060ee0f89adcdeadbe7fe519d3d42fac75b3b7b667fd0e773ca5d23d46948de0186deb66e9db2ab139fe13b26a9e9d8299f629dd173fcd80c0340271893545b66b677fc414586e461e155babda2fe6b1b71cee1a74205db1ab02d3728078d49c60d38f2d65b4d01a39039f9901a2b11deca800b01f571e12f1ca808e6a853143304d6ea8da377358cb935055f52fc5b171617611004198e041bf43999a84be6fedb20b75dfa5e1dfc468cebd31d3979232c56b5e36e5c1bf571a1341f635e347adc900ad70b5cd4308a7fe612b26d54e71662a2d3f72fbce763ba1d1d2ca252fb03cdc220c0c2418c0f962e770c36036fa86b0c4b2371fc2d6fe31574f19cd37b5f191dbc174e402324a2d285b33d8aed25c5275d9346aa97da2a02ef4bade377a211af68658692affb4fa594fc0d369a563130fb54f2f9e40ae30cdac9375adb202597dc1de47de3e43bd7ac253f57c82387f90f8e29e4d890fc3537fd909bc78f9d3b3400dcfc828b8f9a93df5425bf363fec47cdc635af29263ea8c7fb93eca4a7444753421992ffb496879c387a3314970d25fe03783baee506a1837a09db66330c4653a7fa89315c69bfe6337fd4bd7dcd061e88dce1bf2c3346662831eeaad2ff6db21c17b26bde8c4d2bf039be4386d33150c291eabfb62bb4666048ccae6a0ca436870c6370626a4272ae4ac884541a135b63834362e11839b9134bb0c44885f4d0f4d41d7cd79ae430643e285359cddf7e7f626b50f2131ab659184cacffcfa7a5c6fcec418b88ba794f81dfd190b6fc43dcd6e04c843880de80b3f9206307d685c43ed5a151f7c36330c97293edc4b8d801801a528020811f9680c8626c01e39d404c45487d84cbdd0f86f041bcadc2382fded6b6813bfdfcd7a04b52794a81b62930dee16c33a52be160e92908893a25c0a6c0474d3352d8022604d8ead79f1112930c7b1bf455939ecdeb7128360a89678414526d3d8044f2f324bbb876511f3cee29f8e077abbb6b2f6abcd213941eaf8a8edf2b2610ad43bc53ada85fda354b1e938a0f170d19ab9a548cda6e2f32ed78695f450bc318df37352d323492862673e29998ded2b324c4717ea2c5bf1aeedfc3fd330b3a9cbc2b13dd487c1b193357473b537180e42e20fe03b7f2e0c1af67cfecc51559ed99d5221a9e771634893901d73f6c5c3389cbbbf33be1161f3e306adb8b0d27c22f4563a8aab7490259ea7b95bf52dbc5db574c8d5d8cff2f88980300791457361555559595fc09c0a24875912daa26ebbbd86998fe2b276e7bfe7509860f919646483ea7d9bfee128a73ad9ac527c7505a0ec897aa4bc13ab584e1de962240703d2591ea60c39dd1f43b29f0b89cc77713c86472fe6883951be2893e8208630aff260a18beff15d15f232ee4cf4e4fa4c15a37064d589118b662a85d6525a7eca5430ec324fe506063ee7c4c2e088bb96553bbdf1fe7d90a910bf6b399298da030e49d08001cc03379d1b271145911f2a88f328bfcba174b882cb8580c1e8bd47a282e7e48b8bdc0eb03cdb1aa4fac2ced7eba280d28123d50af11d22c0336284a1cd690713bb8d28622aed5bbd6176649a3b45a04cc3fd03726fcda11268d7f707e02c803b26c9e2592779a9e51054ddbfb9035bf1e02c9b81e8cc2171116da2498d10e49d2f5cb01c531e70e4d63e0e15959a8a8894b282972bcb75429d111ead57d98d5968ef72c39b11fbca585f20a1235950a905419df0bfe4c731d7743129d9e22764d3995b69a4407417f1849952f7725d1266650e0cec5cbb7106158f3d99c93211f41361451715550421782fa718cd68fd3caf4039f4f00cf05a727298dd165d82b25c7572ed4ae56bcc0dbb71e3367779c649f8b51e6b59538f5ded22250f0078614c6bf072e4262cd29a9e252d11900e3bac25bf373c5892f21687059c7119d8a49668165f6a026f3b426be6b04e93da01617d80736f2d422f2cb6e68bfe36b4dd7ff780b8b3e3da3ca2c15a0dc314d8c1076b291a678513da404be75e08d9aff52f9cb8b84b25ff6af7a9bbe389c92b7600878f48acd1e216d3703f99d6214564ee5c3949e2321a183d25b75f328ea8574c51eccd04d5014040abfdf4374386d79843cf43ebc731e478b75d0eb4842776d3c9e28c51f961b25798ba2b74fa7d8ec71015a2cd0730e2f99a8c9274a8699eb3a728c895db52f93c5e397adb732bfa51225e195e5184ab0fc7acc5ca0b3be9371971a8ab0b810a9884f641470cf11d915bfc9241f41f4f1e8149b3d4a26cc0fc3287f7f55c60f163325b76c07a065be6bac48b476ecc20cc116372bb53ef591fcbd2a3ab54720f7a7ce992ef05249419db3ad338d738ae605cbde77cd4ef211b17cfc8cb3e838befb84169431a5aafe64e5e98abcaff674963566774d6be9214f30500ba77e37f04c3891da6faaa1922d6e1faa1daa8b297a0129717b0a98cadb0ebfaea02726f182492866a37229b61743be74e0f9557a0eeee590a625fe70aaccc2b69507087485a037eb02813a273820f55960e0d505c9f29c089c16a9b546d0019f7cc7292fb156e37191adedee083fd55091a50f81a593927c8cc63bf08e559fed5d1e389350a5960eeb5a39529080d7a51177942495053b6cf11cd5aea0ba6ed4efbc17252a3e2a60485c1a7711ea016c4bf7c449e557b4f5aa25762ebd7efa8dad3107be327b89d295790c82147b446c2ba491a63991a1205b3e167ca978bec4143601c6d63934b5e9890b0c1e6a881b8c1711549f65bcdcccd040529f520e394cd80068cd72ae672eedb5ca6e5b424aefc7b10409e763244b19d7503782d6ecd6902588299da95d16368c2af4496559d5db9a235ce43c4ec19e26572da73f97bcc03b0f87b41b953a02d820cd6f83a73a2b61f0e50a677ac5e1c6862266ae323d1105ebf44730e996483706344a7f95cc62706c89f96cffbb252fc13ee6a3a1f3dc3b5b9a59cd5b34d011dc3fef8a7d63c48c8734e79787bcf79fdf9abe3132217422f962faa7517c74312073d39d6378de78d1ffbad928bedec1dad0a50a6ae79e1e1a80ee5d48bf23a51bf5fc0c8dfc21ec28d6d7e92b14ebf8373312a41d59dc0e1e60cf627a99139d17501e54aa98f9173b9eba90cbe41831dc693b4f31baa82209376bdad8ad35710d4713e5bedc8ad054b0cac2df3a2af9864db095fd291c36b02a6372528aea871643442acfbef5ddd31bafc8e108fee36ad004a38ea0c9319acdbd426eb798e13430e2b1bcc0fe6e3afdf9cdfd2f7da0638245238c0b6338d96704ab8c0bca356cca9f97f80bbb9842c7059cb7119ee790a7a47e1c614f2e288f0e6036583d12a92aa6f181800d32b8d43da02f47799e86d5aebbfd832e1e882897aa0648c5541a55d4c191aad41e1b0f4b0ddd9bb602866ee3074a6e4e031f76acc1297bbd24264753a97b4981a372de246ae4675eece315d9e89ff06d2700c176830b2aa051e5a1c46e9ba38dd07d1ad7a8a22ffa522bafdca3f3e3842e540d9fdd1f4e24194af0391ee7b9f3671fc893afeb177f535b87dac9b37d1614e86d3539e24d2e3ceca91bac6a55512de3eb05e9e8ea1a0000c6a0aaa7bbda29998b50232eee071b571de334ce0e3b2df2d777dd13576951b89dfb1e74eef21614e7d0a83ea1a7cd358f40c2ec66cf3791fb68656408ae2d5ce2a93e18942a2643e01a0a3657d87d1ca9000060c4fe879384bffa4d8d1dfe893fd5dc56a108275d9716e8f324acdcbdf0dd7ed2045f78e29cba267dba8343f338b3588200ce2c46e615eccb493880e9ced0d10574c753f82690a13d78f8968df1e029ff9c34280a60b9498d5ac97fca99fecbb74bd1a3f02194abb294e91b9cf3812b5641ce25bdf26702f29975a486eef0de59c6dfc3b89f357c393f732b7ac427138156c615e0c95812e9146795a2660bc8996d32f6056229dc0c5d3457b7b824709d8c82325071d0f117383130f4ba4a639d198e7420864e2cc3893fb22f868f4bdc49361e240c000058e08eaa7ba1fdd2d73e9c4f842f529794ae6893833139dedc0eba155f87a05d0b52fcf07cd23a7db1fab9b1c88716d2f6a56fe7eecbcb4bce9a020cfb5f0390fd2a5ce7c53301e5af7e1c32c7886a25df1bfbfde62252759255b6009be2a7a557f1909d936559fb7eadec185918c91f18380d97ca1b322c804e711c2a08ee50c2bb9060ace938a4b2721133d92f91eb9d3e39655fb6f83223294312393d7d17303a393051dfd8454c55cd0d529da9c2538ce2be2ac356389e0e331183d766dfde08648d5399b71262a1e342af65d16e426d5c0454d91cb68069312fe61f6ed07331decbe501b9a7f5618759a87c7babf08b9698ed271acb11e18435c44b2853218613a60444bdcf3a48e68de61f74e801393cf9fc07276cd4bd4a133dab6497f13070309a3822e5d43fd7335e31bffb18d4769b9617af8fe148452945dd3da975e86eb1cfbe6bc855be6ac2150fba41a2d9b18076f6eb8a29e9c307dba9e83449487179c7613bbd4ee9f3f8b62342068fd7eb5bbeb3000349d4451c4da157ab1a7b0f8759f60741f253e52d07748d214a75e77967a6b386d2504c1ba675af6eddb7842045e2d6a953c6d7d19f40a7c0276963564684021cfe40a533e4dfe52f46c65424cc4539ab7502808688509f878005f810e49d6b7114e2d816332decb41f1d1092612604548e7f9c2bb737c1085c9e4fe743968a80ab8fb3329191196bf31e4643248f7a9f85d0973275f100b18b7ab39dd5f3ab4442d01f2df32d424b34f4f13ecf967446c9dbd56672baa3ed1f4449824cf8da251582680a86375968dc021fda34e48a25791d67116ac9ed44bfbd25caccf7bd312fe96a230afd8bdcbe5abd5776917d5071d738cb4d04d44a5ed676ce36f8e4771364580a537c28769f95ceb0528b2e6abab5ecddd0a92e1f5b1369ee59be2c0b4111c3101ba36e8d98db066d7bd5ff2a73a2d8a84ea29de8a248c3747df9866d8eb6001c002e7ba7dffa8ae2173e42eaa133d6da6efe39f15392724df1de6208e3dcb72053dcad6ef52379e6b33dfc51ffb62abf030000fc534dc3da3050ba880d93f92c94a5aeab1f31b2f926ee9917686cb77ffd50ea4f39e5e0f04ad74d2ea6625305aac5aac5b93eac9cb0dd3b30de5af05aae86571f6ee1f1d916c3f243685de81ddbd15f0378bcf07782dcd7bc326df84376a8d8744da4c1343fd63a2aaabe220bbfc5e5e7559a2632906b39bbe8e7c795984ee2e79123767f6fc37d7cb79b731d33c24da3c5f5780c47986cd3ab4221448f8fb41bf55f83cd49d02f68d2a22a07cc7f2af6534f29585787924ce884b3e6ce9d94426f65bdac927d476c0cddc237c76e44c36dcd3ce4ba47ff552a46dd95cafae5aab68cf199b032727885541404cbdabde357bf0473394cca06d4e5c5462fecf2dd7a1a000000e48c63038d32026ba33d0f65c1657c8fdde279f0021bc4660492cbda756b2e59f6c28f3af533270ce57fb62f746a091f57153f45b52a9827af1319ba1b47f2904e405ef4cf4e2defdde39fffda4c7c0101da89742ef0826cd50c088bbfde16a54bdcd5ef8f2916d3cbc0279e4c9f328f25b46b3810a4b34c9172b3539321d22712cdf25a20fd19577d097e91813fe78c32ae77d776ccb2ae8b56a0bc72e9e7535d11058898c9113b7da67cc3334f70af992bd18e0b71a127509363d6205c49228cd320845a5410f2c48a704194243af9c64c6023ab1db49ac206575107fb6f72d32e9aea5e1128a6d0fdc41890bc896d7da31ec5ecaa4aae15c3ff6833bb67527a0f099f948d082c2d568ced57dbd3ccad41672e25649571e316ff646ad500cab956b639aaaf0965b309a20725999241ac05231d16772637db9c35f4a8671224fb1ce1f17b342504b1e61f623f7a6514ee10af1a22866d5f23422647dc654834fa5c77f09d2d257d19b2bab57f6848f6c584281c44ae42314d14751989fd92f92f6c8155ec5929f50983c1878ed1d990befb64aa91b2165d8ae0d84608d9dc6dea9f9cde75a9257fab2df4479e703c20ee84e6eb6e6b6ba41eaf578385febc8c488f0dc9905e1ab9a8fbd269a090502d3af9e75dca3b87cb24429f5e739b5712f135070cddb90433379db0632c7b94fe6e3bd6f4607304c28eb2db5bdd15e2fe9ec2e03806983cb7a70e3ecf99f011505831dc20901e1d79852003e34cf73d8b83e8771b09760098f850148cb8dc593b345992c799f04381bd361c2bd342adf13f6b08c46c701317978c4a708e915f26dad4510c28a44c8a7a79d189edad9151fdade375debe2fce315009d160653342ee796b88bd088f1121a5b44277e02303503ccf9443400c18453ae08811ce160dca0957d4360b97d33930c032786b1f2c09b76caaf788170c9143510c830cf4826ee92666f4ed09b7ecc9be13118b5919b46379b5ae823cbda95b0cdfd68953e33e1dc7dc743a2546ce019f687adf49e628d9cfcaeda62b70e69d197b636b56b69ef5e298fe4161f058ef4dcb2d672201ae4a4509d29033ece23208c0c22b038a0c4a1400149126d09a6516935b3b170261430642c5ac000b33ef55b836382b9c9e1200b0f1b4f93420ad889a9bd531121b8ecaf75c7125a4f72eba64f9eedd622566212f611616007e8e501f2d952201ed36c45893a2320d7e5e399c32ce3fcda5f8d030b99bc71a759d814ed6315213df294694e485189d5fe3cb6b9b91ac0cb03fc974821b8f5aae119ba754de9dcf9513b0a69dc0200605eb5409d30693e7d9ee39f67c8972eb1682c18be9524559b5aa6c6dac501317859b0a039be04b0875bf7dd514c0e621802da6b4333a9124314f1bf0df392c21b1035699191caee80470cee702da070ead32efabb4be5ed87902a7022661169c21e9f7b9c134400935fdfa9b7e7009eb8ce3889a9a050b801a92d77fa2c414d29a2a835d0cdd426153ca8eb2b0f1de7632b155d754ebcab8e0ff95cf07331ede9dc1c220ea29a4cb2b457c42c37eb65acce060deb946da401f64e5cf8f0c0d8e06d570a02a19f6d35cd99da071479f907955fec0721f550f0c15fcad905436433ebcea78949aaf89379ac69272ae73695a6e1d1a545d768c6ceea0919fb60c3c677c4494456753fa3e60511c3736abaf1b412b68c520843635a6efbd233433662b338c4cd04eebe1e93d4ff6e368179c158041dbad87a5773f545bace45d1ad0c5e1cee2715709d38153a131be087cab6dd41e9785e725884a4ad57d32ff2dc83639a5101555ca4e0f9641df4b81b6970b9250fb29977f0e4166a179e05e386066df79a2b9a49c9ca51556800365417dbb20b9fb6f1f1efeae09cbca41bf3a35c7ce2d89769fee19c8a7f476052d8f09fc79968dff8786220e23385e8c243ade2bc664fad034940f40c51adeafdccfa9de657aa5a1beef8a140574acd61a39c3a22f050945fd9b7d816d074548a4a749e0d25018263b8882b598f69fca9714113db903144440e671f019d197f9e87ffce00ab501c79cf5206d1673223e1a13e8cba9509fd662f67ffbacc2e06c27d2002220b3af3b72d76448269b968dce0a49eab5fbdb1fe27ca24b914ee1d16b35d4e75dd9cf5f25fe833bf9a19364e93f842f4eb32a022cbb939287d179720c3d578e192c209274415dfad63fe7135c0499b59a02baa0f4bc3ef5efb86ba265e664f90a988056575a22e5193b9ba41b0b75e0cfdaede084e5eff0b5f5c77f6ad227f7327dccdef689d8b008cd7aa55c369fb9199059b963d3f248d734477551c5bbe59536288489336edf645c79a16c186f42ba1a5a1db43ca7cd507a8999b0a39e31f6d7f7e5489cb849c17832b6602b9b6ff7a9c82ed68d5168262a8b0c22c14503cef04b9dde02bd7479e35fe12627b858c41978053a7a250b1a5e30627888eeb8fc8af4c46c43c40f6d092bd03f12cfcfe91eb2589152e23a4c8cb05962a18b1889848ed4a1efd9229d4b5359d42762895f72c47b9be297840b85b10b4fdca18e69444b26e5498e04a8118e95ce022f8d120f0102baec19e30f89285511045c78b261aefc8e933422b3b4860f280246b64b6e636c89121b10b5633104d167153001db251dff4f6b29a6de4ec4ee10e6aa156cc586f7959ad1b99a6f8592fbf98ae8171f10ececfcea318375d90015b2e255e47627a207fb851ba2c43ed62bc2be24628cbcf7532a90f9d5cfc02e387f68f3ece8a0ca15147c8e6f64f447455d715c5b5b6698e952d6e6a35732b9253a3002d4db8b658cf8ce6a71f0e06e3272f02aac24906aa4832441fa166dd002954c62984a2204e9f0d518c0c5055104bce0990f516ac18e68b09bb3e339382b7fb6dffa232342e7956260974cf92316060373e9dab0c2d84f1636fb6a67001099daa093296bb163e65186e74ac54d5f0d00b019231b540560bee20e60792a02dc50125c5d8a2ac1ad7f0b2c00f2150ef0472ab965f4ce473e96049cf7a9db04691da48e109b1049a5246dcde297aca7540665393aadf7a8a80ad0325539b01e8862ded2418de975d9c960bd30a0542b2b7858e34f41a4e802414af77d8e81094e59728a8b1a951225f673d9f330fa24c72cb97840c89bf977d12eee6dca06308442ebce5a88d92883364fa5672863ae3a8c6774995dc1b4ac7a68cb54c0ae0debbad4140cfc4a0b2ef35d4363677af799efc0b8f880548565e2d8fd646aa522288637df8ecc112754663a4e9fcd5d6e48ddb0dc5a461d3a656003492a010a1168e4fdbc3804f3306f81106b8c7ba3c71cce9a3b42197c294b18e7648144b83f2ae23644131e112bd1f1c56d29b0ba332a3d529e184145bcc6d0f1754c3fbf14f8fbba7bfc4ba694751790f77e08de22fcd1e7995c73ca018b5ce9b460342f3b913f9d8ef55a7c91773254582d155df554920d8a0c89931039129b8ad2275e339328b92302be0f3162ca34076114d861d155d90d8beec625908a307eb423ae2f33a6e83d95247c48ef5afc060de0e791868aabe82168185f1242c77c27d8fe00f6d2d55290c8f71cf52a87375d1266a02bee2f0ea59f49f951b108909e92661cbd6fcc57208caf809a62e125478d77ad53cb1ce1781ed1e06e04023c39b16b27b8e5b51f62bacc9fb3a38ac00388b5748886aee4a34fa198d76fbf998552102cbf6ea6cedb7fe86b6fc6fbd9b3b07a7b2d793186deaf7f7fb5247dcd62499c37f23ee2ffbd79242d1b665ca96db7ab369455e92aa4344592aaa1756585e6d31fcb1edc0362972af3d901dfdfc4470ee96ee03e4ab02d0b0b614714a8623c6f2b24092624142823796901f7f2c76dd960573628e623cfb3d6cfb5198f5d253f34ee3acdcf577e13f3941338ab32c49cd6daa220d1a59e175abe7019266ba9d5130e17b628c0bc540a672cfa01b862a08ee8f3ad8cb11588fd12008c10e0b33505472759314797200058126fae923f86c7d3ea6e398bfcb8f2d742de0ccd48dd23cc572bd88b0d1f2a35637235df0b250ff215d94ab1ec85a03a7b8d645be8fd21d4eedff0bb96c3a8885b000d7b93f4d3ad79ec9a31ef851a5f3ff46bb68fc220e9ef361e64265297cec7ad9dca19cd53287b613dbaa1787aa316822309e2231c57aa268d5893e6c9370189918634b504cc4fb3f7649833029f89800661b1d7111365d04a156e22c973e021c9576e4cc2b142be67c52557e04564f32c7171da11e203450c9b3082726fd969ca196c8446ff4c74190087f7001719b2e9c41ba03616c106802fec97fcc6c45218becd07dc4d0abfae1463e837b3bd1493bf54c81842b582a3d8f0b152333657f3a350f2305fd14beaf5e4fcfe3103595f5f310139835169b3955deb001cee42177994a311609de652a1db13fee390d74a7a9d290b3494615fcbc457dec29ee80a5bcb8ca166f1e309b3dfd78b25156f40d86bb126552297aa15bd804c5631074119aaa95244c2ecf3dbf0c88899922855b0a214116250a4043798b1ce73214342a4089539a8fec4b2ff3687741bef5be75d578a2c65dffd69c428a4e4606da89e6a7d180f876ac62ae997c941892bb5d3665cf53a13a0edc0a58c6320c97940ed3d940d2296f1051ddbc1dd80f33d726f467a8b3203c82977aa2463cda2af5e2a1a5ba5d7ab9532487d344f39e98b654cac7c9f1b67a8a030203dd67a9ebc45c9e6a7f84a39e77f8071a6a40a66f650a936ea56013a32ced2c08ee991265d585998977198d591b3a8318e8b768c0d8330673c36144e0971889a0f0db3ddaccde47e84fe86879a3bd3ec959a85eaf81012f6560f16368a66a7747db1d6d5602b2df49001cb2d8128b5a5fc7f1d5241fa410a135e11f1b5080630e1892606988e57c46925ae42213e00d6eb5a032bb9c8176cf6b02ff0f1f5fe87f949de9edc2edd1091fe4533f969c39f9ce7fbc96b03fdff8e4d09889bdc084b05ad5cf8d3a7224bc47a5810cccd8fc628371006570aed0bbbc1232213508c253ca2efdcc447200c190b783c0521c9a552fbfef267e006bac25433b3005c8b6e5aa200dd30099212d96bbff90b3f79d5a5224f7cc4614a5af3ac2c74a032a0a22ba4f82a58b84c9bb8871e3ff0a840cddaf982529dea5f159df730d53fa6518d2da3b12862cb7ac2a44c4f3d26efc7f1f1dbaea7a151e0e8642905d6cbed7c7f463db539574b32cd1228cdeb912f0b1d5f90f7cc55ef1a99155d039e8a144b90d21094fd2ba49b7aabe744c653ce83fdd0cc91c0c76a4da788d02c45e92e64b15ac1596cf854a91997abf95938c9a37c458e520cbc990bfe2398033cef591ba64535e322a0e73e1ea53651f1fe52ce2877a635ef3e5254ee2d1a30c8258e718e2d17c4f24ce7b4405f188cf5e99612e89d5a099e24899fdc683f07a621cd588b16c8947888899215ad0c999f2449225b7913a0d0ca0e6e46401b38a5b031b5d4ec57ac09fcf11f9da5f807aabd90a56a0557b1e173a5667cae660fbe92c7f98ac047783b3b6ff97042fd25712d4d61995cfce83eaf2ebe6e6f472c2dcaf6c48fb991fbb9bd65c65cb3785f25451d578beff7bd118371168798401a333dae2e8366b69d6e19b4c08bbdebefa76c26617ba79c8fa27bac9da9aae626d83533ae621a37293b54b28e1d19d4e6e985f647adc32646d3a9e60cc2e2623fead0a3b730815dbfa152b24e459198df620c0a7a4924a34c19187016bdcb52220692da72c777198f5bacdb2d63242248e81296004b2212238d373e4faa4c11203d50402e1e6663853e859f7390dfc6382cac98e90f6874d0a6074282e0968e14a46838642c4ac4dc4f38cffd499fa422d83a3ecc10dab748b15bd9fab1d70a1739a8f1dc7bcaf1ffb06c396b119a4b2b614cadb946af244c64aaa5c6e16a843bac50faa9c884ca8de639aa5d057a44634130387516dcc3b82b47019d8326de1f898d8b889f2b699f926d86b808b390216250842275e90030618b55345143033b2faa8e18201246173cda703452112479ea554abda8b5310b178c935384816d19afe25836c0bda4479dcd9bdb3a9d565769645b9a53bdaa61e80ef8c17c95823d9c94b6562286d410e9539ab7f92371401c1418122751e175345110aa5c057a26dca56a9a630863cf419e35d2244a94018905eea5ca382dd7604ab4162a59be06c7cc4594d4f84beca43e76430f40c2840c378345ff6c33b1843cde3b61824b0d48706fc6904588daf0925640f51e94a9c65d92d4557164913c3311d12d54d8295900bc9a8a1c5f6fed4cef7f8bc21dd1bf40ad3bf8c3d1974bc20f7485fa541fbfb4e2320c13188811abbbd9baa7b4d3b4894fad94a9eda54733cb10b0780818920d7e22a2b253f24b52415dff0365e9f49d0612840813f6e611aac14d5c912578b940c492d0202ad9c326ef0cc103a361c151014d522245b861c207f11e60124879bfc5ddb043df495a44c01323f8c0986ee0102e4ec101256a7c060828ac0493e50e2a5070ba2bb8421323b6028d8cd4eb12b403148ca8909aa371836d63236e478e3e32893b88368958c33f0015ac21abafe0560ed82da09021f9198bf61287136b5f5c4c4819cabf80c58edc094a015a293e495863aca19b9c2b46e44c2f44af8c9115b5f104a460134bf22c43168e3d07e1580ee2f4c400645660071f0e4c15491e093dfd94de0278cc116a7e33797b2c40a2f9d5489957200b2221720c989cf205928959ae8a0cd7ca4dcfa30548e206149004a46a604b58d9a14514269315ebcc9f9bc284e37e87d30dd7400323bdf9ff9a92f709d61696ed4fd8f5245350d75df8fe6d66bbfc96f5ac4599c48ca70e91ba8a98c5234580308cbf2804939c5279a148e84011d37b5fc30e1c1dc4843b4365480646ac60116be497ad0199f34066b3d841f07174027cd40a3d9844141931087de8c88c23c8410562492f92ba9874a473e5f36a82612e94f841d2f94962c00d83e9a96c702e1bc01ed0149ced7e7dbe02ec5b9377767d5f5e065423afea95d24ee89418c9aaa5feae6a12d4404bdab6f8f3af815f847d94ae18061012e2e711e8890e68bca72599b8063234e01b98f1cd2fa0d3030893030301489230680c328d64a4456d7bc52aed100d222f822460d24390c9502431767b8a2812872d30177990c48448e7ecb8e9b121094156a12ea2e5c916088425195024519e731ef896e8e4ebffc9fbfab9bdeb246bfee27a072a4dfbf3f8b145ceaf0faf9f4d576794f694e378d8d59cea77fc118cf4b515dd656ba0bd94396253e88152aec8924c14d3eac3c3a23312d59b682ee4067c201119b2a32ad8e410907c847637e93d14c6d6bcd9ca5b56aaa3477d280e10e2e5d009cc01840380cc5b6d4af249d478104a54913eb11262de3b36e921ce255e836c6f95167b44018ee94d786982727ac043f246c93cffe7e7b1a7e5152833df843f81f81038b45050bf99f6a54296ab15de8b0d5f2a3513723543f7093cc957e42ac5f91f6588b387f6afa4c603e97f501fd4c43bfe7c0ff207bdde19d7bad2d5b477050313a70ddb05e0fa60f9be61eb423ee7d4b02f1934918a963483d9bc48513527789a62a07495b65903a613c7eecc42d6fe4540c53a15014517526407815dbcfa7d08a74f3fa24f13bb0c2763e1e1f15f037edaa41f7db0850e44697cc47c5120383141be17c81a042b746e91375ebdb2ba5bb06b5cf319cd11e74c9f435ee96a959d7bc39cfedec3f5590de91a21efa5f422eed0786dbedc22336d516273391acf30b6e38cafd9923c232e71b5b7393131b90ebcf4f49fbe08d772293aead25abae2d56ced2a368350f72fcaf0b4173caf36cbcf5f1fbcbe000e41fde4da70c33d89d8ac9fbe6db6b6ef1d33c798397b651b0a9526bf239f3e25dd66dd4415bfa4d321efc805d5960e6e19fc0908dcd6877fec26eeac0a6f0bf220f705ff2bc3cef5ddbfda633cbc58e86cf3b7cc41a2514967159ba9f7262d7ffce31179f1c51980018d576b31cf710689cd118b3a7836d867fdf62085d71fa96f87cbfe343a6afdaa15c8357f112bfdf188b4db8c1a6f577b39b1a23e66155762a247e9fe7367ed38d629c2f5c7d7938fee7d22b4bfa47efde0a12a3e5432fdd7cb1c9e9df6c407c95e5305f218edd20ed70dee4c612c71a9a796883ae30e9d7a70a6b311f1c4a247a2fb85603c2c669bcf14b68f10e3da7b275adbd7de1c769f6e29bb7f03a46bd4f6231c27d133f415360770d5d4c18b328cee0e12c704e06683896c649c2292e36538e32526a6b3a2ad7bab97ceaf380bff719194572347179fee0a264e1f46c6a997ea9abf08d941b6bb36e4be60e1ea44349d5a712387ec081c38419f8a457d38fc77dafe84b4e90cb067b9d9e42423060f68996104b819497452855eaf4fc0b950e3fa635d4a977e9c41fcce4e97789b912bf68d326e4082b62e5793d34fde46ae33cc9c1c21fdb4b7e3583e1c6d18ecf9f7fe7d073e16b60729d67379fb0220b3b4888e407fff8662f40071da5a892e5f5af56230726f19c83b72e100a6414e9d32918f98f0d89af1f39c7e6c9feefbcd26e7fa251c7effaa416c4b976cda8c01b7fde4f71fdbcd26052c654732904f671dfa0a223675164bffd8b37b32c93322fe04c28dde7b6ceff9a4a91cfa05b751a4860227e3120417fc2edac3cdc14fc81ed2a36fc14910d9fd5addbc881454f2d6e3bb0f47a0e912fc93ec6dea7efd7c0b79168fffcb4bbdee58bd430216a577b994e60e2e4e3be5452084f54d08e8f54ee037787cd305cc285d567468f270d3ca2e1014bcc594e3c157bbb0eb3cf87c72f6ef1d8bb4792df783998c3165b13db1d22509cb884f6b09a7978fdf0534e0d1daa7e8f538294c791402d6f85d5b02a76b93275b5385024764e21adfdfbd65ae85c6f7ef57db864f86cf8f4f5ae32722937308bd01a50147552019fdf31bbe4332779b5c1d43c7381df2a985ddef05adf15d318e22d1333858100d446cbfa66e16a260627d67c9db1e863dc9b3b09e8a199e3f1836d061d30a425f4c75ac5c858ac492ab7a87ef179cf660d6255ded7d6f1b3f35eed3e70ddd0e666f8c64bedd302597e3bebccc73859f71ab8a0b9a0ec3e32c47f3be4fdb2809e193aa6f3ad4b14def23914b3590562c1933f251022b2970313a99021c3f7a48e77e253eb7ff049da4349bac09ed31adfb48db52ce1b3fc83e7b696e32ae74cd4b728bfcb6b44b7cc1c86dd6f4e5fa8eb734e1a37d9fed0308f9bacf3c37c06b61b4d6ab7a391c5b42d9112dec9b40f8ca3d1f960eded2b90b1285ecb7e1094abfeeb867599ead49ba84f78d775341964ebd3b493af859f924f903010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000