e515e516e517e518e519e51ae51be51ce51de51ee51fe520e521e522e523e524e525e526e527e528e529e52ae52be52ce52de52ee52fe530e531e532e533e534e535e536e537e538e539e53ae53be53ce53de53ee53fe540e541e542e543e544e545e546e547e548e549e54ae54be54ce54de54ee54fe550e551e552e553e554e555e556e557e558e559e55ae55be55ce55de55ee55fe560e561e562e563e564e565e566e567e568e569e56ae56be56ce56de56ee56fe570e571e572e573e574e575e576e577e578e579e57ae57be57ce57de57ee57fe580e581e582e583e584e585e586e587e588e589e58ae58be58ce58de58ee58fe590e591e592e593e594e595e596e597e598e599e59ae59be59ce59de59ee59fe5a0e5a1e5a2e5a3e5a4e5a5e5a6e5a7e5a8e5a9e5aae5abe5ace5ade5aee5afe5b0e5b1e5b2e5b3e5b4e5b5e5b6e5b7e5b8e5b9e5bae5bbe5bce5bde5bee5bfe5c0e5c1e5c2e5c3e5c4e5c5e5c6e5c7e5c8e5c9e5cae5cbe5cce5cde5cee5cfe5d0e5d1e5d2e5d3e5d4e5d5e5d6e5d7e5d8e5d9e5dae5dbe5dce5dde5dee5dfe5e0e5e1e5e2e5e3e5e4e5e5e5e6e5e7e5e8e5e9e5eae5ebe5ece5ede5eee5efe5f0e5f1e5f2e5f3e5f4e5f5e5f6e5f7e5f8e5f9e5fae5fbe5fce5fde5fee5ffe500e601e602e603e604e605e606e607e608e609e60ae60be60ce60de60ee60fe610e611e612e613e614e615e616e617e618e619e61ae61be61ce61de61ee61fe620e621e622e623e624e625e626e627e628e629e62ae62be62ce62de62ee62fe630e631e632e633e634e635e636e637e638e639e63ae63be63ce63de63ee63fe640e641e642e643e644e645e646e647e648e649e64ae64be64ce64de64ee64fe650e651e652e653e654e655e656e657e658e659e65ae65be65ce65de65ee65fe660e661e662e663e664e665e666e667e668e669e66ae66be66ce66de66ee66fe670e671e672e673e674e675e676e677e678e679e67ae67be67ce67de67ee67fe680e681e682e683e684e685e686e687e688e689e68ae68be68ce68de68ee68fe690e691e692e693e694e695e696e697e698e699e69ae69be69ce69de69ee69fe6a0e6a1e6a2e6a3e6a4e6a5e6a6e6a7e6a8e6a9e6aae6abe6ace6ade6aee6afe6b0e6b1e6b2e6b3e6b4e6b5e6b6e6b7e6b8e6b9e6bae6bbe6bce6bde6bee6bfe6c0e6c1e6c2e6c3e6c4e6c5e6c6e6c7e6c8e6c9e6cae6cbe6cce6cde6cee6cfe6d0e6d1e6d2e6d3e6d4e6d5e6d6e6d7e6d8e6d9e6dae6dbe6dce6dde6dee6dfe6e0e6e1e6e2e6e3e6e4e6e5e6e6e6e7e6e8e6e9e6eae6ebe6ece6ede6eee6efe6f0e6f1e6f2e6f3e6f4e6f5e6f6e6f7e6f8e6f9e6fae6fbe6fce6fde6fee6ffe600e701e702e703e704e705e706e707e708e709e70ae70be70ce70de70ee70fe710e711e712e713e714e715e716e717e718e719e71ae71be71ce71de71ee71fe720e721e722e723e724e725e726e727e728e729e72ae72be72ce72de72ee72fe730e731e732e733e734e735e736e737e738e739e73ae73be73ce73de73ee73fe740e741e742e743e744e745e746e747e748e749e74ae74be74ce74de74ee74fe750e751e752e753e754e755e756e757e758e759e75ae75be75ce75de75ee75fe760e761e762e763e764e765e766e767e768e769e76ae76be76ce76de76ee76fe770e771e772e773e774e775e776e777e778e779e77ae77be77ce77de77ee77fe780e781e782e783e784e785e786e787e788e789e78ae78be78ce78de78ee78fe790e791e792e793e794e795e796e797e798e799e79ae79be79ce79de79ee79fe7a0e7a1e7a2e7a3e7a4e7a5e7a6e7a7e7a8e7a9e7aae7abe7ace7ade7aee7afe7b0e7b1e7b2e7b3e7b4e7b5e7b6e7b7e7b8e7b9e7bae7bbe7bce7bde7bee7bfe7c0e7c1e7c2e7c3e7c4e7c5e7c6e7c7e7c8e7c9e7cae7cbe7cce7cde7cee7cfe7d0e7d1e7d2e7d3e7d4e7d5e7d6e7d7e7d8e7d9e7dae7dbe7dce7dde7dee7dfe7e0e7e1e7e2e7e3e7e4e7e5e7e6e7e7e7e8e7e9e7eae7ebe7ece7ede7eee7efe7f0e7f1e7f2e7f3e7f4e7f5e7f6e7f7e7f8e7f9e7fae7fbe7fce7fde7fee7ffe700e801e802e803e804e805e806e807e808e809e80ae80be80ce80de80ee80fe810e811e812e813e814e815e816e817e818e819e81ae81be81ce81de81ee81fe820e821e822e823e824e825e826e827e828e829e82ae82be82ce82de82ee82fe830e831e832e833e834e835e836e837e838e839e83ae83be83ce83de83ee83fe840e841e842e843e844e845e846e847e848e849e84ae84be84ce84de84ee84fe850e851e852e853e854e855e856e857e858e859e85ae85be85ce85de85ee85fe860e861e862e863e864e865e866e867e868e869e86ae86be86ce86de86ee86fe870e871e872e873e874e875e876e877e878e879e87ae87be87ce87de87ee87fe880e881e882e883e884e885e886e887e888e889e88ae88be88ce88de88ee88fe890e891e892e893e894e895e896e897e898e899e89ae89be89ce89de89ee89fe8a0e8a1e8a2e8a3e8a4e8a5e8a6e8a7e8a8e8a9e8aae8abe8ace8ade8aee8afe8b0e8b1e8b2e8b3e8b4e8b5e8b6e8b7e8b8e8b9e8bae8bbe8bce8bde8bee8bfe8c0e8c1e8c2e8c3e8c4e8c5e8c6e8c7e8c8e8c9e8cae8cbe8cce8cde8cee8cfe8d0e8d1e8d2e8d3e8d4e8d5e8d6e8d7e8d8e8d9e8dae8dbe8dce8dde8dee8dfe8e0e8e1e8e2e8e3e8e4e8e5e8e6e8e7e8e8e8e9e8eae8ebe8ece8ede8eee8efe8f0e8f1e8f2e8f3e8f4e8f5e8f6e8f7e8f8e8f9e8fae8fbe8fce8fde8fee8ffe800e901e902e903e904e905e906e907e908e909e90ae90be90ce90de90ee90fe910e911e912e913e914e915e916e917e918e919e91ae91be91ce91de91ee91fe920e921e922e923e924e925e926e927e928e929e92ae92be92ce92de92ee92fe930e931e932e933e934e935e936e937e938e939e93ae93be93ce93de93ee93fe940e941e942e943e944e945e946e947e948e949e94ae94be94ce94de94ee94fe950e951e952e953e954e955e956e957e958e959e95ae95be95ce95de95ee95fe960e961e962e963e964e965e966e967e968e969e96ae96be96ce96de96ee96fe970e971e972e973e974e975e976e977e978e979e97ae97be97ce97de97ee97fe980e981e982e983e984e985e986e987e988e989e98ae98be98ce98de98ee98fe990e991e992e993e994e995e996e997e998e999e99ae99be99ce99de99ee99fe9a0e9a1e9a2e9a3e9a4e9a5e9a6e9a7e9a8e9a9e9aae9abe9ace9ade9aee9afe9b0e9b1e9b2e9b3e9b4e9b5e9b6e9b7e9b8e9b9e9bae9bbe9bce9bde9bee9bfe9c0e9c1e9c2e9c3e9c4e9c5e9c6e9c7e9c8e9c9e9cae9cbe9cce9cde9cee9cfe9d0e9d1e9d2e9d3e9d4e9d5e9d6e9d7e9d8e9d9e9dae9dbe9dce9dde9dee9dfe9e0e9e1e9e2e9e3e9e4e9e5e9e6e9e7e9e8e9e9e9eae9ebe9ece9ede9eee9efe9f0e9f1e9f2e9f3e9f4e9f5e9f6e9f7e9f8e9f9e9fae9fbe9fce9fde9fee9ffe900ea01ea02ea03ea04ea05ea06ea07ea08ea09ea0aea0bea0cea0dea0eea0fea10ea11ea12ea13ea14ea15ea16ea17ea18ea19ea1aea1bea1cea1dea1eea1fea20ea21ea22ea23ea24ea25ea26ea27ea28ea29ea2aea2bea2cea2dea2eea2fea30ea31ea32ea33ea34ea35ea36ea37ea38ea39ea3aea3bea3cea3dea3eea3fea40ea41ea42ea43ea44ea45ea46ea47ea48ea49ea4aea4bea4cea4dea4eea4fea50ea51ea52ea53ea54ea55ea56ea57ea58ea59ea5aea5bea5cea5dea5eea5fea60ea61ea62ea63ea64ea65ea66ea67ea68ea69ea6aea6bea6cea6dea6eea6fea70ea71ea72ea73ea74ea75ea76ea77ea78ea79ea7aea7bea7cea7dea7eea7fea80ea81ea82ea83ea84ea85ea86ea87ea88ea89ea8aea8bea8cea8dea8eea8fea90ea91ea92ea93ea94ea95ea96ea97ea98ea99ea9aea9bea9cea9dea9eea9feaa0eaa1eaa2eaa3eaa4eaa5eaa6eaa7eaa8eaa9eaaaeaabeaaceaadeaaeeaafeab0eab1eab2eab3eab4eab5eab6eab7eab8eab9eabaeabbeabceabdeabeeabfeac0eac1eac2eac3eac4eac5eac6eac7eac8eac9eacaeacbeacceacdeaceeacfead0ead1ead2ead3ead4ead5ead6ead7ead8ead9eadaeadbeadceaddeadeeadfeae0eae1eae2eae3eae4eae5eae6eae7eae8eae9eaeaeaebeaeceaedeaeeeaefeaf0eaf1eaf2eaf3eaf4eaf5eaf6eaf7eaf8eaf9eafaeafbeafceafdeafeeaffea00eb01eb02eb03eb04eb05eb06eb07eb08eb09eb0aeb0beb0ceb0deb0eeb0feb10eb11eb12eb13eb14eb15eb16eb17eb18eb19eb1aeb1beb1ceb1deb1eeb1feb20eb21eb22eb23eb24eb25eb26eb27eb28eb29eb2aeb2beb2ceb2deb2eeb2feb30eb31eb32eb33eb34eb35eb36eb37eb38eb39eb3aeb3beb3ceb3deb3eeb3feb40eb41eb42eb43eb44eb45eb46eb47eb48eb49eb4aeb4beb4ceb4deb4eeb4feb50eb51eb52eb53eb54eb55eb56eb57eb58eb59eb5aeb5beb5ceb5deb5eeb5feb60eb61eb62eb63eb64eb65eb66eb67eb68eb69eb6aeb6beb6ceb6deb6eeb6feb70eb71eb72eb73eb74eb75eb76eb77eb78eb79eb7aeb7beb7ceb7deb7eeb7feb80eb81eb82eb83eb84eb85eb86eb87eb88eb89eb8aeb8beb8ceb8deb8eeb8feb90eb91eb92eb93eb94eb95eb96eb97eb98eb99eb9aeb9beb9ceb9deb9eeb9feba0eba1eba2eba3eba4eba5eba6eba7eba8eba9ebaaebabebacebadebaeebafebb0ebb1ebb2ebb3ebb4ebb5ebb6ebb7ebb8ebb9ebbaebbbebbcebbdebbeebbfebc0ebc1ebc2ebc3ebc4ebc5ebc6ebc7ebc8ebc9ebcaebcbebccebcdebceebcfebd0ebd1ebd2ebd3ebd4ebd5ebd6ebd7ebd8ebd9ebdaebdbebdcebddebdeebdfebe0ebe1ebe2ebe3ebe4ebe5ebe6ebe7ebe8ebe9ebeaebebebecebedebeeebefebf0ebf1ebf2ebf3ebf4ebf5ebf6ebf7ebf8ebf9ebfaebfbebfcebfdebfeebffeb00ec01ec02ec03ec04ec05ec06ec07ec08ec09ec0aec0bec0cec0dec0eec0fec10ec11ec12ec13ec14ec15ec16ec17ec18ec19ec1aec1bec1cec1dec1eec1fec20ec21ec22ec23ec24ec25ec26ec27ec28ec29ec2aec2bec2cec2dec2eec2fec30ec31ec32ec33ec34ec35ec36ec37ec38ec39ec3aec3bec3cec3dec3eec3fec40ec41ec42ec43ec44ec45ec46ec47ec48ec49ec4aec4bec4cec4dec4eec4fec50ec51ec52ec53ec54ec55ec56ec57ec58ec59ec5aec5bec5cec5dec5eec5fec60ec61ec62ec63ec64ec65ec66ec67ec68ec69ec6aec6bec6cec6dec6eec6fec70ec71ec72ec73ec74ec75ec76ec77ec78ec79ec7aec7bec7cec7dec7eec7fec80ec81ec82ec83ec84ec85ec86ec87ec88ec89ec8aec8bec8cec8dec8eec8fec90ec91ec92ec93ec94ec95ec96ec97ec98ec99ec9aec9bec9cec9dec9eec9feca0eca1eca2eca3eca4eca5eca6eca7eca8eca9ecaaecabecacecadecaeecafecb0ecb1ecb2ecb3ecb4ecb5ecb6ecb7ecb8ecb9ecbaecbbecbcecbdecbeecbfecc0ecc1ecc2ecc3ecc4ecc5ecc6ecc7ecc8ecc9eccaeccbeccceccdecceeccfecd0ecd1ecd2ecd3ecd4ecd5ecd6ecd7ecd8ecd9ecdaecdbecdcecddecdeecdfece0ece1ece2ece3ece4ece5ece6ece7ece8ece9eceaecebecececedeceeecefecf0ecf1ecf2ecf3ecf4ecf5ecf6ecf7ecf8ecf9ecfaecfbecfcecfdecfeecffec00ed01ed02ed03ed04ed05ed06ed07ed08ed09ed0aed0bed0ced0ded0eed0fed10ed11ed12ed13ed14ed15ed16ed17ed18ed19ed1aed1bed1ced1ded1eed1fed20ed21ed22ed23ed24ed25ed26ed27ed28ed29ed2aed2bed2ced2ded2eed2fed30ed31ed32ed33ed34ed35ed36ed37ed38ed39ed3aed3bed3ced3ded3eed3fed40ed41ed42ed43ed44ed45ed46ed47ed48ed49ed4aed4bed4ced4ded4eed4fed50ed51ed52ed53ed54ed55ed56ed57ed58ed59ed5aed5bed5ced5ded5eed5fed60ed61ed62ed63ed64ed65ed66ed67ed68ed69ed6aed6bed6ced6ded6eed6fed70ed71ed72ed73ed74ed75ed76ed77ed78ed79ed7aed7bed7ced7ded7eed7fed80ed81ed82ed83ed84ed85ed86ed87ed88ed89ed8aed8bed8ced8ded8eed8fed90ed91ed92ed93ed94ed95ed96ed97ed98ed99ed9aed9bed9ced9ded9eed9feda0eda1eda2eda3eda4eda5eda6eda7eda8eda9edaaedabedacedadedaeedafedb0edb1edb2edb3edb4edb5edb6edb7edb8edb9edbaedbbedbcedbdedbeedbfedc0edc1edc2edc3edc4edc5edc6edc7edc8edc9edcaedcbedccedcdedceedcfedd0edd1edd2edd3edd4edd5edd6edd7edd8edd9eddaeddbeddcedddeddeeddfede0ede1ede2ede3ede4ede5ede6ede7ede8ede9edeaedebedecedededeeedefedf0edf1edf2edf3edf4edf5edf6edf7edf8edf9edfaedfbedfcedfdedfeedffed00ee01ee02ee03ee04ee05ee06ee07ee08ee09ee0aee0bee0cee0dee0eee0fee10ee11ee12ee13ee14ee15ee16ee17ee18ee19ee1aee1bee1cee1dee1eee1fee20ee21ee22ee23ee24ee25ee26ee27ee28ee29ee2aee2bee2cee2dee2eee2fee30ee31ee32ee33ee34ee35ee36ee37ee38ee39ee3aee3bee3cee3dee3eee3fee40ee41ee42ee43ee44ee45ee46ee47ee48ee49ee4aee4bee4cee4dee4eee4fee50ee51ee52ee53ee54ee55ee56ee57ee58ee59ee5aee5bee5cee5dee5eee5fee60ee61ee62ee63ee64ee65ee66ee67ee68ee69ee6aee6bee6cee6dee6eee6fee70ee71ee72ee73ee74ee75ee76ee77ee78ee79ee7aee7bee7cee7dee7eee7fee80ee81ee82ee83ee84ee85ee86ee87ee88ee89ee8aee8bee8cee8dee8eee8fee90ee91ee92ee93ee94ee95ee96ee97ee98ee99ee9aee9bee9cee9dee9eee9feea0eea1eea2eea3eea4eea5eea6eea7eea8eea9eeaaeeabeeaceeadeeaeeeafeeb0eeb1eeb2eeb3eeb4eeb5eeb6eeb7eeb8eeb9eebaeebbeebceebdeebeeebfeec0eec1eec2eec3eec4eec5eec6eec7eec8eec9eecaeecbeecceecdeeceeecfeed0eed1eed2eed3eed4eed5eed6eed7eed8eed9eedaeedbeedceeddeedeeedfeee0eee1eee2eee3eee4eee5eee6eee7eee8eee9eeeaeeebeeeceeedeeeeeeefeef0eef1eef2eef3eef4eef5eef6eef7eef8eef9eefaeefbeefceefdeefeeeffee00ef01ef02ef03ef04ef05ef06ef07ef08ef09ef0aef0bef0cef0def0eef0fef10ef11ef12ef13ef14ef15ef16ef17ef18ef19ef1aef1bef1cef1def1eef1fef20ef21ef22ef23ef24ef25ef26ef27ef28ef29ef2aef2bef2cef2def2eef2fef30ef31ef32ef33ef34ef35ef36ef37ef38ef39ef3aef3bef3cef3def3eef3fef40ef41ef42ef43ef44ef45ef46ef47ef48ef49ef4aef4bef4cef4def4eef4fef50ef51ef52ef53ef54ef55ef56ef57ef58ef59ef5aef5bef5cef5def5eef5fef60ef61ef62ef63ef64ef65ef66ef67ef68ef69ef6aef6bef6cef6def6eef6fef70ef71ef72ef73ef74ef75ef76ef77ef78ef79ef7aef7bef7cef7def7eef7fef80ef81ef82ef83ef84ef85ef86ef87ef88ef89ef8aef8bef8cef8def8eef8fef90ef91ef92ef93ef94ef95ef96ef97ef98ef99ef9aef9bef9cef9def9eef9fefa0efa1efa2efa3efa4efa5efa6efa7efa8efa9efaaefabefacefadefaeefafefb0efb1efb2efb3efb4efb5efb6efb7efb8efb9efbaefbbefbcefbdefbeefbfefc0efc1efc2efc3efc4efc5efc6efc7efc8efc9efcaefcbefccefcdefceefcfefd0efd1efd2efd3efd4efd5efd6efd7efd8efd9efdaefdbefdcefddefdeefdfefe0efe1efe2efe3efe4efe5efe6efe7efe8efe9efeaefebefecefedefeeefefeff0eff1eff2eff3eff4eff5eff6eff7eff8eff9effaeffbeffceffdeffeefffef00f001f002f003f004f005f006f007f008f009f00af00bf00cf00df00ef00ff010f011f012f013f014f015f016f017f018f019f01af01bf01cf01df01ef01ff020f021f022f023f024f025f026f027f028f029f02af02bf02cf02df02ef02ff030f031f032f033f034f035f036f037f038f039f03af03bf03cf03df03ef03ff040f041f042f043f044f045f046f047f048f049f04af04bf04cf04df04ef04ff050f051f052f053f054f055f056f057f058f059f05af05bf05cf05df05ef05ff060f061f062f063f064f065f066f067f068f069f06af06bf06cf06df06ef06ff070f071f072f073f074f075f076f077f078f079f07af07bf07cf07df07ef07ff080f081f082f083f084f085f086f087f088f089f08af08bf08cf08df08ef08ff090f091f092f093f094f095f096f097f098f099f09af09bf09cf09df09ef09ff0a0f0a1f0a2f0a3f0a4f0a5f0a6f0a7f0a8f0a9f0aaf0abf0acf0adf0aef0aff0b0f0b1f0b2f0b3f0b4f0b5f0b6f0b7f0b8f0b9f0baf0bbf0bcf0bdf0bef0bff0c0f0c1f0c2f0c3f0c4f0c5f0c6f0c7f0c8f0c9f0caf0cbf0ccf0cdf0cef0cff0d0f0d1f0d2f0d3f0d4f0d5f0d6f0d7f0d8f0d9f0daf0dbf0dcf0ddf0def0dff0e0f0e1f0e2f0e3f0e4f0e5f0e6f0e7f0e8f0e9f0eaf0ebf0ecf0edf0eef0eff0f0f0f1f0f2f0f3f0f4f0f5f0f6f0f7f0f8f0f9f0faf0fbf0fcf0fdf0fef0fff000f101f102f103f104f105f106f107f108f109f10af10bf10cf10df10ef10ff110f111f112f113f114f115f116f117f118f119f11af11bf11cf11df11ef11ff120f121f122f123f124f125f126f127f128f129f12af12bf12cf12df12ef12ff130f131f132f133f134f135f136f137f138f139f13af13bf13cf13df13ef13ff140f141f142f143f144f145f146f147f148f149f14af14bf14cf14df14ef14ff150f151f152f153f154f155f156f157f158f159f15af15bf15cf15df15ef15ff160f161f162f163f164f165f166f167f168f169f16af16bf16cf16df16ef16ff170f171f172f173f174f175f176f177f178f179f17af17bf17cf17df17ef17ff180f181f182f183f184f185f186f187f188f189f18af18bf18cf18df18ef18ff190f191f192f193f194f195f196f197f198f199f19af19bf19cf19df19ef19ff1a0f1a1f1a2f1a3f1a4f1a5f1a6f1a7f1a8f1a9f1aaf1abf1acf1adf1aef1aff1b0f1b1f1b2f1b3f1b4f1b5f1b6f1b7f1b8f1b9f1baf1bbf1bcf1bdf1bef1bff1c0f1c1f1c2f1c3f1c4f1c5f1c6f1c7f1c8f1c9f1caf1cbf1ccf1cdf1cef1cff1d0f1d1f1d2f1d3f1d4f1d5f1d6f1d7f1d8f1d9f1daf1dbf1dcf1ddf1def1dff1e0f1e1f1e2f1e3f1e4f1e5f1e6f1e7f1e8f1e9f1eaf1ebf1ecf1edf1eef1eff1f0f1f1f1f2f1f3f1f4f1f5f1f6f1f7f1f8f1f9f1faf1fbf1fcf1fdf1fef1fff100f201f202f203f204f205f206f207f208f209f20af20bf20cf20df20ef20ff210f211f212f213f214f215f216f217f218f219f21af21bf21cf21df21ef21ff220f221f222f223f224f225f226f227f228f229f22af22bf22cf22df22ef22ff230f231f232f233f234f235f236f237f238f239f23af23bf23cf23df23ef23ff240f241f242f243f244f245f246f247f248f249f24af24bf24cf24df24ef24ff250f251f252f253f254f255f256f257f258f259f25af25bf25cf25df25ef25ff260f261f262f263f264f265f266f267f268f269f26af26bf26cf26df26ef26ff270f271f272f273f274f275f276f277f278f279f27af27bf27cf27df27ef27ff280f281f282f283f284f285f286f287f288f289f28af28bf28cf28df28ef28ff290f291f292f293f294f295f296f297f298f299f29af29bf29cf29df29ef29ff2a0f2a1f2a2f2a3f2a4f2a5f2a6f2a7f2a8f2a9f2aaf2abf2acf2adf2aef2aff2b0f2b1f2b2f2b3f2b4f2b5f2b6f2b7f2b8f2b9f2baf2bbf2bcf2bdf2bef2bff2c0f2c1f2c2f2c3f2c4f2c5f2c6f2c7f2c8f2c9f2caf2cbf2ccf2cdf2cef2cff2d0f2d1f2d2f2d3f2d4f2d5f2d6f2d7f2d8f2d9f2daf2dbf2dcf2ddf2def2dff2e0f2e1f2e2f2e3f2e4f2e5f2e6f2e7f2e8f2e9f2eaf2ebf2ecf2edf2eef2eff2f0f2f1f2f2f2f3f2f4f2f5f2f6f2f7f2f8f2f9f2faf2fbf2fcf2fdf2fef2fff200f301f302f303f304f305f306f307f308f309f30af30bf30cf30df30ef30ff310f311f312f313f314f315f316f317f318f319f31af31bf31cf31df31ef31ff320f321f322f323f324f325f326f327f328f329f32af32bf32cf32df32ef32ff330f331f332f333f334f335f336f337f338f339f33af33bf33cf33df33ef33ff340f341f342f343f344f345f346f347f348f349f34af34bf34cf34df34ef34ff350f351f352f353f354f355f356f357f358f359f35af35bf35cf35df35ef35ff360f361f362f363f364f365f366f367f368f369f36af36bf36cf36df36ef36ff370f371f372f373f374f375f376f377f378f379f37af37bf37cf37df37ef37ff380f381f382f383f384f385f386f387f388f389f38af38bf38cf38df38ef38ff390f391f392f393f394f395f396f397f398f399f39af39bf39cf39df39ef39ff3a0f3a1f3a2f3a3f3a4f3a5f3a6f3a7f3a8f3a9f3aaf3abf3acf3adf3aef3aff3b0f3b1f3b2f3b3f3b4f3b5f3b6f3b7f3b8f3b9f3baf3bbf3bcf3bdf3bef3bff3c0f3c1f3c2f3c3f3c4f3c5f3c6f3c7f3c8f3c9f3caf3cbf3ccf3cdf3cef3cff3d0f3d1f3d2f3d3f3d4f3d5f3d6f3d7f3d8f3d9f3daf3dbf3dcf3ddf3def3dff3e0f3e1f3e2f3e3f3e4f3e5f3e6f3e7f3e8f3e9f3eaf3ebf3ecf3edf3eef3eff3f0f3f1f3f2f3f3f3f4f3f5f3f6f3f7f3f8f3f9f3faf3fbf3fcf3fdf3fef3fff300f401f402f403f404f405f406f407f408f409f40af40bf40cf40df40ef40ff410f411f412f413f414f415f416f417f418f419f41af41bf41cf41df41ef41ff420f421f422f423f424f425f426f427f428f429f42af42bf42cf42df42ef42ff430f431f432f433f434f435f436f437f438f439f43af43bf43cf43df43ef43ff440f441f442f443f444f445f446f447f448f449f44af44bf44cf44df44ef44ff450f451f452f453f454f455f456f457f458f459f45af45bf45cf45df45ef45ff460f461f462f463f464f465f466f467f468f469f46af46bf46cf46df46ef46ff470f471f472f473f474f475f476f477f478f479f47af47bf47cf47df47ef47ff480f481f482f483f484f485f486f487f488f489f48af48bf48cf48df48ef48ff490f491f492f493f494f495f496f497f498f499f49af49bf49cf49df49ef49ff4a0f4a1f4a2f4a3f4a4f4a5f4a6f4a7f4a8f4a9f4aaf4abf4acf4adf4aef4aff4b0f4b1f4b2f4b3f4b4f4b5f4b6f4b7f4b8f4b9f4baf4bbf4bcf4bdf4bef4bff4c0f4c1f4c2f4c3f4c4f4c5f4c6f4c7f4c8f4c9f4caf4cbf4ccf4cdf4cef4cff4d0f4d1f4d2f4d3f4d4f4d5f4d6f4d7f4d8f4d9f4daf4dbf4dcf4ddf4def4dff4e0f4e1f4e2f4e3f4e4f4e5f4e6f4e7f4e8f4e9f4eaf4ebf4ecf4edf4eef4eff4f0f4f1f4f2f4f3f4f4f4f5f4f6f4f7f4f8f4f9f4faf4fbf4fcf4fdf4fef4fff400f501f502f503f504f505f506f507f508f509f50af50bf50cf50df50ef50ff510f511f512f513f514f515f516f517f518f519f51af51bf51cf51df51ef51ff520f521f522f523f524f525f526f527f528f529f52af52bf52cf52df52ef52ff530f531f532f533f534f535f536f537f538f539f53af53bf53cf53df53ef53ff540f541f542f543f544f545f546f547f548f549f54af54bf54cf54df54ef54ff550f551f552f553f554f555f556f557f558f559f55af55bf55cf55df55ef55ff560f561f562f563f564f565f566f567f568f569f56af56bf56cf56df56ef56ff570f571f572f573f574f575f576f577f578f579f57af57bf57cf57df57ef57ff580f581f582f583f584f585f586f587f588f589f58af58bf58cf58df58ef58ff590f591f592f593f594f595f596f597f598f599f59af59bf59cf59df59ef59ff5a0f5a1f5a2f5a3f5a4f5a5f5a6f5a7f5a8f5a9f5aaf5abf5acf5adf5aef5aff5b0f5b1f5b2f5b3f5b4f5b5f5b6f5b7f5b8f5b9f5baf5bbf5bcf5bdf5bef5bff5c0f5c1f5c2f5c3f5c4f5c5f5c6f5c7f5c8f5c9f5caf5cbf5ccf5cdf5cef5cff5d0f5d1f5d2f5d3f5d4f5d5f5d6f5d7f5d8f5d9f5daf5dbf5dcf5ddf5def5dff5e0f5e1f5e2f5e3f5e4f5e5f5e6f5e7f5e8f5e9f5eaf5ebf5ecf5edf5eef5eff5f0f5f1f5f2f5f3f5f4f5f5f5f6f5f7f5f8f5f9f5faf5fbf5fcf5fdf5fef5fff500f601f602f603f604f605f606f607f608f609f60af60bf60cf60df60ef60ff610f611f612f613f614f615f616f617f618f619f61af61bf61cf61df61ef61ff620f621f622f623f624f625f626f627f628f629f62af62bf62cf62df62ef62ff630f631f632f633f634f635f636f637f638f639f63af63bf63cf63df63ef63ff640f641f642f643f644f645f646f647f648f649f64af64bf64cf64df64ef64ff650f651f652f653f654f655f656f657f658f659f65af65bf65cf65df65ef65ff660f661f662f663f664f665f666f667f668f669f66af66bf66cf66df66ef66ff670f671f672f673f674f675f676f677f678f679f67af67bf67cf67df67ef67ff680f681f682f683f684f685f686f687f688f689f68af68bf68cf68df68ef68ff690f691f692f693f694f695f696f697f698f699f69af69bf69cf69df69ef69ff6a0f6a1f6a2f6a3f6a4f6a5f6a6f6a7f6a8f6a9f6aaf6abf6acf6adf6aef6aff6b0f6b1f6b2f6b3f6b4f6b5f6b6f6b7f6b8f6b9f6baf6bbf6bcf6bdf6bef6bff6c0f6c1f6c2f6c3f6c4f6c5f6c6f6c7f6c8f6c9f6caf6cbf6ccf6cdf6cef6cff6d0f6d1f6d2f6d3f6d4f6d5f6d6f6d7f6d8f6d9f6daf6dbf6dcf6ddf6def6dff6e0f6e1f6e2f6e3f6e4f6e5f6e6f6e7f6e8f6e9f6eaf6ebf6ecf6edf6eef6eff6f0f6f1f6f2f6f3f6f4f6f5f6f6f6f7f6f8f6f9f6faf6fbf6fcf6fdf6fef6fff600f701f702f703f704f705f706f707f708f709f70af70bf70cf70df70ef70ff710f711f712f713f714f715f716f717f718f719f71af71bf71cf71df71ef71ff720f721f722f723f724f725f726f727f728f729f72af72bf72cf72df72ef72ff730f731f732f733f734f735f736f737f738f739f73af73bf73cf73df73ef73ff740f741f742f743f744f745f746f747f748f749f74af74bf74cf74df74ef74ff750f751f752f753f754f755f756f757f758f759f75af75bf75cf75df75ef75ff760f761f762f763f764f765f766f767f768f769f76af76bf76cf76df76ef76ff770f771f772f773f774f775f776f777f778f779f77af77bf77cf77df77ef77ff780f781f782f783f784f785f786f787f788f789f78af78bf78cf78df78ef78ff790f791f792f793f794f795f796f797f798f799f79af79bf79cf79df79ef79ff7a0f7a1f7a2f7a3f7a4f7a5f7a6f7a7f7a8f7a9f7aaf7abf7acf7adf7aef7aff7b0f7b1f7b2f7b3f7b4f7b5f7b6f7b7f7b8f7b9f7baf7bbf7bcf7bdf7bef7bff7c0f7c1f7c2f7c3f7c4f7c5f7c6f7c7f7c8f7c9f7caf7cbf7ccf7cdf7cef7cff7d0f7d1f7d2f7d3f7d4f7d5f7d6f7d7f7d8f7d9f7daf7dbf7dcf7ddf7def7dff7e0f7e1f7e2f7e3f7e4f7e5f7e6f7e7f7e8f7e9f7eaf7ebf7ecf7edf7eef7eff7f0f7f1f7f2f7f3f7f4f7f5f7f6f7f7f7f8f7f9f7faf7fbf7fcf7fdf7fef7fff700f801f802f803f804f805f806f807f808f809f80af80bf80cf80df80ef80ff810f811f812f813f814f815f816f817f818f819f81af81bf81cf81df81ef81ff820f821f822f823f824f825f826f827f828f829f82af82bf82cf82df82ef82ff830f831f832f833f834f835f836f837f838f839f83af83bf83cf83df83ef83ff840f841f842f843f844f845f846f847f848f849f84af84bf84cf84df84ef84ff850f851f852f853f854f855f856f857f858f859f85af85bf85cf85df85ef85ff860f861f862f863f864f865f866f867f868f869f86af86bf86cf86df86ef86ff870f871f872f873f874f875f876f877f878f879f87af87bf87cf87df87ef87ff880f881f882f883f884f885f886f887f888f889f88af88bf88cf88df88ef88ff890f891f892f893f894f895f896f897f898f899f89af89bf89cf89df89ef89ff8a0f8a1f8a2f8a3f8a4f8a5f8a6f8a7f8a8f8a9f8aaf8abf8acf8adf8aef8aff8b0f8b1f8b2f8b3f8b4f8b5f8b6f8b7f8b8f8b9f8baf8bbf8bcf8bdf8bef8bff8c0f8c1f8c2f8c3f8c4f8c5f8c6f8c7f8c8f8c9f8caf8cbf8ccf8cdf8cef8cff8d0f8d1f8d2f8d3f8d4f8d5f8d6f8d7f8d8f8d9f8daf8dbf8dcf8ddf8def8dff8e0f8e1f8e2f8e3f8e4f8e5f8e6f8e7f8e8f8e9f8eaf8ebf8ecf8edf8eef8eff8f0f8f1f8f2f8f3f8f4f8f5f8f6f8f7f8f8f8f9f8faf8fbf8fcf8fdf8fef8fff800f901f902f903f904f905f906f907f908f909f90af90bf90cf90df90ef90ff910f911f912f913f914f915f916f917f918f919f91af91bf91cf91df91ef91ff920f921f922f923f924f925f926f927f928f929f92af92bf92cf92df92ef92ff930f931f932f933f934f935f936f937f938f939f93af93bf93cf93df93ef93ff940f941f942f943f944f945f946f947f948f949f94af94bf94cf94df94ef94ff950f951f952f953f954f955f956f957f958f959f95af95bf95cf95df95ef95ff960f961f962f963f964f965f966f967f968f969f96af96bf96cf96df96ef96ff970f971f972f973f974f975f976f977f978f979f97af97bf97cf97df97ef97ff980f981f982f983f984f985f986f987f988f989f98af98bf98cf98df98ef98ff990f991f992f993f994f995f996f997f998f999f99af99bf99cf99df99ef99ff9a0f9a1f9a2f9a3f9a4f9a5f9a6f9a7f9a8f9a9f9aaf9abf9acf9adf9aef9aff9b0f9b1f9b2f9b3f9b4f9b5f9b6f9b7f9b8f9b9f9baf9bbf9bcf9bdf9bef9bff9c0f9c1f9c2f9c3f9c4f9c5f9c6f9c7f9c8f9c9f9caf9cbf9ccf9cdf9cef9cff9d0f9d1f9d2f9d3f9d4f9d5f9d6f9d7f9d8f9d9f9daf9dbf9dcf9ddf9def9dff9e0f9e1f9e2f9e3f9e4f9e5f9e6f9e7f9e8f9e9f9eaf9ebf9ecf9edf9eef9eff9f0f9f1f9f2f9f3f9f4f9f5f9f6f9f7f9f8f9f9f9faf9fbf9fcf9fdf9fef9fff900fa01fa02fa03fa04fa05fa06fa07fa08fa09fa0afa0bfa0cfa0dfa0efa0ffa10fa11fa12fa13fa14fa15fa16fa17fa18fa19fa1afa1bfa1cfa1dfa1efa1ffa20fa21fa22fa23fa24fa25fa26fa27fa28fa29fa2afa2bfa2cfa2dfa2efa2ffa30fa31fa32fa33fa34fa35fa36fa37fa38fa39fa3afa3bfa3cfa3dfa3efa3ffa40fa41fa42fa43fa44fa45fa46fa47fa48fa49fa4afa4bfa4cfa4dfa4efa4ffa50fa51fa52fa53fa54fa55fa56fa57fa58fa59fa5afa5bfa5cfa5dfa5efa5ffa60fa61fa62fa63fa64fa65fa66fa67fa68fa69fa6afa6bfa6cfa6dfa6efa6ffa70fa71fa72fa73fa74fa75fa76fa77fa78fa79fa7afa7bfa7cfa7dfa7efa7ffa80fa81fa82fa83fa84fa85fa86fa87fa88fa89fa8afa8bfa8cfa8dfa8efa8ffa90fa91fa92fa93fa94fa95fa96fa97fa98fa99fa9afa9bfa9cfa9dfa9efa9ffaa0faa1faa2faa3faa4faa5faa6faa7faa8faa9faaafaabfaacfaadfaaefaaffab0fab1fab2fab3fab4fab5fab6fab7fab8fab9fabafabbfabcfabdfabefabffac0fac1fac2fac3fac4fac5fac6fac7fac8fac9facafacbfaccfacdfacefacffad0fad1fad2fad3fad4fad5fad6fad7fad8fad9fadafadbfadcfaddfadefadffae0fae1fae2fae3fae4fae5fae6fae7fae8fae9faeafaebfaecfaedfaeefaeffaf0faf1faf2faf3faf4faf5faf6faf7faf8faf9fafafafbfafcfafdfafefafffa00fb01fb02fb03fb04fb05fb06fb07fb08fb09fb0afb0bfb0cfb0dfb0efb0ffb10fb11fb12fb13fb14fb15fb16fb17fb18fb19fb1afb1bfb1cfb1dfb1efb1ffb20fb21fb22fb23fb24fb25fb26fb27fb28fb29fb2afb2bfb2cfb2dfb2efb2ffb30fb31fb32fb33fb34fb35fb36fb37fb38fb39fb3afb3bfb3cfb3dfb3efb3ffb40fb41fb42fb43fb44fb45fb46fb47fb48fb49fb4afb4bfb4cfb4dfb4efb4ffb50fb51fb52fb53fb54fb55fb56fb57fb58fb59fb5afb5bfb5cfb5dfb5efb5ffb60fb61fb62fb63fb64fb65fb66fb67fb68fb69fb6afb6bfb6cfb6dfb6efb6ffb70fb71fb72fb73fb74fb75fb76fb77fb78fb79fb7afb7bfb7cfb7dfb7efb7ffb80fb81fb82fb83fb84fb85fb86fb87fb88fb89fb8afb8bfb8cfb8dfb8efb8ffb90fb91fb92fb93fb94fb95fb96fb97fb98fb99fb9afb9bfb9cfb9dfb9efb9ffba0fba1fba2fba3fba4fba5fba6fba7fba8fba9fbaafbabfbacfbadfbaefbaffbb0fbb1fbb2fbb3fbb4fbb5fbb6fbb7fbb8fbb9fbbafbbbfbbcfbbdfbbefbbffbc0fbc1fbc2fbc3fbc4fbc5fbc6fbc7fbc8fbc9fbcafbcbfbccfbcdfbcefbcffbd0fbd1fbd2fbd3fbd4fbd5fbd6fbd7fbd8fbd9fbdafbdbfbdcfbddfbdefbdffbe0fbe1fbe2fbe3fbe4fbe5fbe6fbe7fbe8fbe9fbeafbebfbecfbedfbeefbeffbf0fbf1fbf2fbf3fbf4fbf5fbf6fbf7fbf8fbf9fbfafbfbfbfcfbfdfbfefbfffb00fc01fc02fc03fc04fc05fc06fc07fc08fc09fc0afc0bfc0cfc0dfc0efc0ffc10fc11fc12fc13fc14fc15fc16fc17fc18fc19fc1afc1bfc1cfc1dfc1efc1ffc20fc21fc22fc23fc24fc25fc26fc27fc28fc29fc2afc2bfc2cfc2dfc2efc2ffc30fc31fc32fc33fc34fc35fc36fc37fc38fc39fc3afc3bfc3cfc3dfc3efc3ffc40fc41fc42fc43fc44fc45fc46fc47fc48fc49fc4afc4bfc4cfc4dfc4efc4ffc50fc51fc52fc53fc54fc55fc56fc57fc58fc59fc5afc5bfc5cfc5dfc5efc5ffc60fc61fc62fc63fc64fc65fc66fc67fc68fc69fc6afc6bfc6cfc6dfc6efc6ffc70fc71fc72fc73fc74fc75fc76fc77fc78fc79fc7afc7bfc7cfc7dfc7efc7ffc80fc81fc82fc83fc84fc85fc86fc87fc88fc89fc8afc8bfc8cfc8dfc8efc8ffc90fc91fc92fc93fc94fc95fc96fc97fc98fc99fc9afc9bfc9cfc9dfc9efc9ffca0fca1fca2fca3fca4fca5fca6fca7fca8fca9fcaafcabfcacfcadfcaefcaffcb0fcb1fcb2fcb3fcb4fcb5fcb6fcb7fcb8fcb9fcbafcbbfcbcfcbdfcbefcbffcc0fcc1fcc2fcc3fcc4fcc5fcc6fcc7fcc8fcc9fccafccbfcccfccdfccefccffcd0fcd1fcd2fcd3fcd4fcd5fcd6fcd7fcd8fcd9fcdafcdbfcdcfcddfcdefcdffce0fce1fce2fce3fce4fce5fce6fce7fce8fce9fceafcebfcecfcedfceefceffcf0fcf1fcf2fcf3fcf4fcf5fcf6fcf7fcf8fcf9fcfafcfbfcfcfcfdfcfefcfffc00fd01fd02fd03fd04fd05fd06fd07fd08fd09fd0afd0bfd0cfd0dfd0efd0ffd10fd11fd12fd13fd14fd15fd16fd17fd18fd19fd1afd1bfd1cfd1dfd1efd1ffd20fd21fd22fd23fd24fd25fd26fd27fd28fd29fd2afd2bfd2cfd2dfd2efd2ffd30fd31fd32fd33fd34fd35fd36fd37fd38fd39fd3afd3bfd3cfd3dfd3efd3ffd40fd41fd42fd43fd44fd45fd46fd47fd48fd49fd4afd4bfd4cfd4dfd4efd4ffd50fd51fd52fd53fd54fd55fd56fd57fd58fd59fd5afd5bfd5cfd5dfd5efd5ffd60fd61fd62fd63fd64fd65fd66fd67fd68fd69fd6afd6bfd6cfd6dfd6efd6ffd70fd71fd72fd73fd74fd75fd76fd77fd78fd79fd7afd7bfd7cfd7dfd7efd7ffd80fd81fd82fd83fd84fd85fd86fd87fd88fd89fd8afd8bfd8cfd8dfd8efd8ffd90fd91fd92fd93fd94fd95fd96fd97fd98fd99fd9afd9bfd9cfd9dfd9efd9ffda0fda1fda2fda3fda4fda5fda6fda7fda8fda9fdaafdabfdacfdadfdaefdaffdb0fdb1fdb2fdb3fdb4fdb5fdb6fdb7fdb8fdb9fdbafdbbfdbcfdbdfdbefdbffdc0fdc1fdc2fdc3fdc4fdc5fdc6fdc7fdc8fdc9fdcafdcbfdccfdcdfdcefdcffdd0fdd1fdd2fdd3fdd4fdd5fdd6fdd7fdd8fdd9fddafddbfddcfdddfddefddffde0fde1fde2fde3fde4fde5fde6fde7fde8fde9fdeafdebfdecfdedfdeefdeffdf0fdf1fdf2fdf3fdf4fdf5fdf6fdf7fdf8fdf9fdfafdfbfdfcfdfdfdfefdfffd00fe01fe02fe03fe04fe05fe06fe07fe08fe09fe0afe0bfe0cfe0dfe0efe0ffe10fe11fe12fe13fe14fe15fe16fe17fe18fe19fe1afe1bfe1cfe1dfe1efe1ffe20fe21fe22fe23fe24fe25fe26fe27fe28fe29fe2afe2bfe2cfe2dfe2efe2ffe30fe31fe32fe33fe34fe35fe36fe37fe38fe39fe3afe3bfe3cfe3dfe3efe3ffe40fe41fe42fe43fe44fe45fe46fe47fe48fe49fe4afe4bfe4cfe4dfe4efe4ffe50fe51fe52fe53fe54fe55fe56fe57fe58fe59fe5afe5bfe5cfe5dfe5efe5ffe60fe61fe62fe63fe64fe65fe66fe67fe68fe69fe6afe6bfe6cfe6dfe6efe6ffe70fe71fe72fe73fe74fe75fe76fe77fe78fe79fe7afe7bfe7cfe7dfe7efe7ffe80fe81fe82fe83fe84fe85fe86fe87fe88fe89fe8afe8bfe8cfe8dfe8efe8ffe90fe91fe92fe93fe94fe95fe96fe97fe98fe99fe9afe9bfe9cfe9dfe9efe9ffea0fea1fea2fea3fea4fea5fea6fea7fea8fea9feaafeabfeacfeadfeaefeaffeb0feb1feb2feb3feb4feb5feb6feb7feb8feb9febafebbfebcfebdfebefebffec0fec1fec2fec3fec4fec5fec6fec7fec8fec9fecafecbfeccfecdfecefecffed0fed1fed2fed3fed4fed5fed6fed7fed8fed9fedafedbfedcfeddfedefedffee0fee1fee2fee3fee4fee5fee6fee7fee8fee9feeafeebfeecfeedfeeefeeffef0fef1fef2fef3fef4fef5fef6fef7fef8fef9fefafefbfefcfefdfefefefffe00ff01ff02ff03ff04ff05ff06ff07ff08ff09ff0aff0bff0cff0dff0eff0fff10ff11ff12ff13ff14ff15ff16ff17ff18ff19ff1aff1bff1cff1dff1eff1fff20ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff3bff3cff3dff3eff3fff40ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff5bff5cff5dff5eff5fff60ff61ff62ff63ff64ff65ff66ff67ff68ff69ff6aff6bff6cff6dff6eff6fff70ff71ff72ff73ff74ff75ff76ff77ff78ff79ff7aff7bff7cff7dff7eff7fff80ff81ff82ff83ff84ff85ff86ff87ff88ff89ff8aff8bff8cff8dff8eff8fff90ff91ff92ff93ff94ff95ff96ff97ff98ff99ff9aff9bff9cff9dff9eff9fffa0ffa1ffa2ffa3ffa4ffa5ffa6ffa7ffa8ffa9ffaaffabffacffadffaeffafffb0ffb1ffb2ffb3ffb4ffb5ffb6ffb7ffb8ffb9ffbaffbbffbcffbdffbeffbfffc0ffc1ffc2ffc3ffc4ffc5ffc6ffc7ffc8ffc9ffcaffcbffccffcdffceffcfffd0ffd1ffd2ffd3ffd4ffd5ffd6ffd7ffd8ffd9ffdaffdbffdcffddffdeffdfffe0ffe1ffe2ffe3ffe4ffe5ffe6ffe7ffe8ffe9ffeaffebffecffedffeeffeffff0fff1fff2fff3fff4fff5fff6fff7fff8fff9fffafffbfffcfffdfffeffffff73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x50440, 0xfffe0}, {&(0x7f000007a8e0)='syzkallers\x00'/32, 0x20, 0x15ffff}, {&(0x7f000007a900)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallers\x00'/128, 0x80, 0x180000}, {&(0x7f000007a980)="eb52904e5446532020202000044000000000000000f8000000000000000000000000000080008000ff0700000000000002000000000000000f00000000000000f6000000f4000000c1bb966a2f007111000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x1ffc00}, {&(0x7f000007aa60)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x1ffde0}, {&(0x7f00000143a0)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x402c5e0}], 0x0, &(0x7f0000002280)={[{@fmask}, {@umask={'umask', 0x3d, 0x2}}, {@sparse}, {@iocharset={'iocharset', 0x3d, 'cp950'}}, {@umask={'umask', 0x3d, 0x4}}, {@prealloc}, {@umask={'umask', 0x3d, 0x9}}]}, 0x1) (async) ioctl$AUTOFS_DEV_IOCTL_CATATONIC(0xffffffffffffffff, 0xc0189379, &(0x7f0000000040)={{0x1, 0x1, 0x18}, './file0\x00'}) [ 728.947239][T21869] BTRFS error (device loop5): open_ctree failed [ 728.976400][T21891] EXT4-fs (loop1): couldn't mount as ext3 due to feature incompatibilities 04:31:44 executing program 5: mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) preadv(r0, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) renameat2(r0, &(0x7f0000000400)='./file1\x00', r1, &(0x7f0000000440)='./file0\x00', 0x5) r2 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x0, 0x0) mknodat(r2, &(0x7f00000003c0)='./file0\x00', 0x0, 0x0) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) symlinkat(&(0x7f0000000180)='./bus\x00', r2, &(0x7f0000000240)='./bus\x00') mkdirat(0xffffffffffffff9c, &(0x7f00000000c0)='./bus\x00', 0x0) ioctl$VFAT_IOCTL_READDIR_BOTH(r2, 0x82307201, &(0x7f0000000480)=[{0x0, 0x0, 0x100}, {0x0, 0x0, 0x100}]) mount$overlay(0x0, &(0x7f0000000040)='./bus\x00', &(0x7f00000002c0), 0x0, &(0x7f0000000080)=ANY=[@ANYBLOB="776f726b6469723d2e2f66696c65312c6c6f776572a3647c8a3cd88ba06c65302c75707065010069723d2e2f6275732c696ee465783d6f6e"]) linkat(r2, &(0x7f0000000280)='./bus\x00', r2, &(0x7f0000000300)='./file1\x00', 0x0) chdir(&(0x7f0000000140)='./bus\x00') lchown(&(0x7f0000000340)='./bus\x00', 0x0, 0x0) unlinkat(r2, &(0x7f0000000380)='./file1\x00', 0x0) r3 = openat(0xffffffffffffff9c, &(0x7f0000000040)='.\x00', 0x40200, 0x10) renameat2(r3, &(0x7f00000001c0)='./file0\x00', r3, &(0x7f0000000200)='./bus\x00', 0x0) [ 729.047374][T21894] loop4: detected capacity change from 0 to 131427 04:31:44 executing program 1: syz_mount_image$ext4(&(0x7f0000000000)='ext3\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x17, &(0x7f0000000200)=[{&(0x7f0000011840)='\x00\x00', 0x2, 0x3}, {&(0x7f0000000540)=' \x00\x00', 0x3, 0x5}, {&(0x7f0000000140)='\x00\x00\x00\x00\x00\b\x00'/24, 0x18, 0x8}, {&(0x7f0000011860)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x20}, {&(0x7f0000000800)="200000000002000019000000900100000f000000000000000100000005000000000004ddff3f000020000000731f1f63731f1f630100ffff53ef010001000000721f1f635b8e281a0000000001000000000000000b0000000001000004000000000000002b0200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e393332393635373533000000000000f1da552c8028bc0500"/200, 0xc8, 0x400}, {&(0x7f0000000040)="000000000000000000000000bfd7fbde2cd74131b8ed5eef968344d001004000160000721f1f630000000011fc53fe991700000000000000000000000000000000c35269cf8f2a671042ff013d116f6efc93ca9a8b54b3", 0x57, 0x4e0}, {&(0x7f0000000400)="00000000000000000000000000000000000000000000000000000000200020000100000000000500400000000000000000000000000000004300000000000000", 0x40, 0x540}, {&(0x7f0000000580)="00000000000000000100000000000000000000000000ba000000000000000000bd43531db7b879f8d846c247e9737cd84ec87d3dc6b85ddf186130dbd3b3a913ffde7d82a1115ce7e3b3792203ea5aa5077b62c99a1f46a3dee2e4f3252f03cb6a280731c3cc7b1a1f3d713befe483c0538a1ed27cac4414257a87767a9eb6750a72d822478a42b549d54b6e787384ad0f36e4dfe9004482a0020ab7cc3b620cd21030b25d039a1298154a5f83a3784179a74bfa3b4751d819fc925bf023eff2b06205e2a7951344f2377880a1ae8312559430c6b1646b39910969ef6a847138ff4338888cc3759f61c3fc76685f0a8f63b1e45f6bad2b8eee32020559b06f5e38f9386e9169e41c7583febea5c13374d1224423ebbb7f7854b6dd8ea50154abe5cd0c6cdb052596ff1d6f967e23fb2158ca80480c2fe98258d54fa50c000000000000539230fd17e6bac57bdc53cdb2be", 0x151, 0x640}, {&(0x7f0000010160)="0500000003000000040000003d1fd6c49fc07094e4ca1270a419000f00030004", 0x20, 0x800}, {&(0x7f00000111a0)="ed41000000080000721f1f63731f1f63731f1f6300000000000004004000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x2100}, {&(0x7f00000111e0)="2000000004ed65de04ed65de00000000721f1f6300"/32, 0x20, 0x2183}, {&(0x7f0000000440)="8081000000601020721f1f09000000000000005763000000000000010040000000000000d5129c6e0bf1fb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000100000000000000000000000000000000000000000000000000000020000000000000000000000000000000721f1f630000000000001f00000000", 0xa7, 0x2600}, {&(0x7f00000112a0)="c0410000954ddfaf721f1f63721f0f63721f1f630000007bf10002004000000000000800000000000af301000400000000000000000000000700000020000000", 0x40, 0x2a00}, {&(0x7f0000011320)="ed410000d9aebd6c1d6ae032a358af34f5c0087a2809743b731f1f63731f1f630000000000000200000000000000001003000000020000000d0000001000050166696c65300000000e0000002800050766696c65310000000000000000000000000000000000000000000000000000006fc3a7c40000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040700"/192, 0xc0, 0x2b00}, {&(0x7f0000011480)="ffa1000026000000731f1f63731f1f63731f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3933323936353735332f66696c65302f66696c6530000000000000000000000000000000000000000000009d621b1c0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000", 0xa0, 0x2d00}, {&(0x7f0000000900)="ed81000064000000731f1f63731f1f63731f1f63000000000000010000000000000000100100000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c2872a1fd0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040734000000000028000000000000006461746100000000000000000000000000000000000000000000000000000000000000006c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572738f459ccd32a75d274cf00e94454abb30ab1a87c0e0880e0655a931b6dd21dffe54e4cc679115210adaa957fa0e1ecc2cc40a302e7bdd2e7a2ab8333334e92701bacc2d0570fee62aeecba803b62bae11370aa20e0dd6d2886255f0c6ea16c4f08c8022ddf6b44c52da27e9835a292ceb0b845f6fd19716f8bda9ad33905809b4fdd98df742b1fcbe8471666df5287de01a8e0ba240c155ccd6ff415c59c2cf4aa22013fa7f44b6aa32378ba7e61d63942e7f9a92a7fe302259d7fdc38edf2cc4affa745ad84461b951dedc0c2b72092a412b31124d8ef4a33464ce8f8a52f7760b768b28a3597b141b21b90ca59af905131e669e15578df797c034042ca2d4decaff82313ef830db4a5b9a759a41a596a1", 0x211, 0x3000}, {&(0x7f00000117c0)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c6533000000110000009407090166696c652e636f6c64000000", 0x80, 0x8000}, {&(0x7f00000118a0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x11800}, {&(0x7f00000118c0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x12000}, {&(0x7f00000001c0)="00000000000800000000000000000000000000000000000000000000000000009609fa720b14f5918d9ed8c0d23d910262df49375c63d727224cd86f2c8cc710", 0x40, 0x12800}, {&(0x7f00000000c0)="00000000000800f5c76edf2608f38ca97255a3495a00"/46, 0x2e, 0x13000}, {&(0x7f0000011920)="504d4d00504d4dff731f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d00000000000000000000000000000000000000000000000000006c6f6f7032310075782f746573742f73797a5f6d6f756e745f696d6167655f650500"/112, 0x70, 0x20000}, {&(0x7f0000002040)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000b6ca6b810358486c77e520ca5de40683779b42a74ab147756edd375dd121d13da0952339cefa13785bb2c0bacd154ae9824c8a86087373998169196169cb2b08455f47e12a239e50f7ffc836c7a28fa539a97027a07de105d240dd607a0e2b694ce476ce05aea1baeb6ae3132a678f324e9a2f09933022b462095731ebe57344f1", 0x4a1, 0x28000}], 0x0, &(0x7f0000002500)=ANY=[@ANYBLOB="00b30824400d21223433bba32035e2ef9711604edf71b82a8fe52765aad2d7836b1a3ba0706a2dbcd3adf3d38a57682198b853fa4e230125fe79a2c4a7e50ec75460bae8f5acee1959c9550f63773d76ea03ae36b4244835a3f5f544aed5577b0212798accf91ecde8621a9dc5cdfee2760508003ff361f94fc318010089b3532183ea8fc6be3f005afae337349b43c202d6c180a2eee27ed2ad99acc703246b4e35b433911d3cfdb6767dff8c0cc2f91ab6c42ebc2c5272197f36cb798833f97edcb11ddfa31834d602f22fe26d5b2094db8417389935f42d9213023fdd367aa1c38e70b68e44ebf44b3fd67798b083f989ae3a4c3cd6f55f339b9ff82bbc68ee3e549c5e63c09b85229f97849d8b093b9cf175f084f4d1a1097057d59d20eae608993156ff12bff4d9c3fa67cf0000ebf075f462f53b6ff908000000c3b95e3b508d50999603000000000000000515bf522ec94a08990c46311f75c2d6b452829b7dbcaf7745a0b7158d7db8120006583c495455301c782bec88a9684756bec6942209ba84329b882d2c9b9287710dbac1269e7c01474ddba5000000001419eca1f3c4ff0a8fb1de3b1bf8d2b875ff49f1efbee816d6635d4ce94f0c5344ebfd68092abecee6e19b4badd6467247c7fa1ab6b8325ba0960337d290545a71be6201d09e5f876468ab32f7c396cd097285139d6c5ee94af37dab2f1fdcdafb7e677f88fd1f41e368ee7dc6c40b1673bac55f5c3440a5bba5c0ebde02ec6a5f7b320841d0bf6b79393eb5195eb39fcde46b9b08cc5e2e3645de0a77603bbdd4011d67c691f4664eee5d25165ada9751678cf7d38c6309b5f457474e81258d68c076ab388761a6d036ead2a51511f5e8657e5038af1632dc7e1e9888d4651542e0e1df8b8314492554b2832f2d7b764d2d52ef2e2569caf83dc1e6c4", @ANYRESOCT, @ANYRES32=0x0], 0x1) [ 729.087807][T21894] ntfs3: loop4: Different NTFS' sector size (1024) and media sector size (512) [ 729.146333][T21894] ntfs3: loop4: Mark volume as dirty due to NTFS errors 04:31:44 executing program 2: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) (async) r1 = openat$dma_heap(0xffffffffffffff9c, &(0x7f0000000180), 0x8000, 0x0) ioctl$VFAT_IOCTL_READDIR_SHORT(r1, 0x82307202, &(0x7f0000001280)=[{0x0, 0x0, 0x100}, {0x0, 0x0, 0x100}]) (async, rerun: 64) write$binfmt_script(r0, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) (async, rerun: 64) preadv(r0, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) (async, rerun: 32) mmap(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x1000005, 0x20010, r1, 0x1e204000) (async, rerun: 32) r2 = openat$fuse(0xffffffffffffff9c, &(0x7f0000000100), 0x2, 0x0) mount$fuseblk(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000001100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r2, @ANYBLOB="2c726f6f746d6f64653dda261d67303030303030303030303030303032303030302c757365725f69643db0882388ea927828265815da52b3625574f68dc1ded6b2558e2c1619228c53bae30d8839d4c8a7860d99f7eecbdd0643a47ffe98e6ceba18996cc34f7688cb6eb4a2297157eab029f0f4467e5f0476fff2e3ef3c5d3f727a2a12a6a4a4611cf6dae06cea5c9fdb5af3729e68df694a84ea963864398e676885f387a58968a5ae97013623cb3fc43d3b723dd5f3795ba1d673f0d2ae9b1d18a4c7ab3b98959111b9f2cb6b5bd3f3ae23260b4f4e346039c80b520a0f669ba2c398ff1103411f9de431590b8e6348d664f8add3be8dee", @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0, @ANYBLOB=',blksize=0x0000000000000800,default_permissions,\x00']) creat(&(0x7f0000000140)='./file0\x00', 0x42) (async) write$binfmt_elf64(0xffffffffffffffff, &(0x7f0000001600)={{0x7f, 0x45, 0x4c, 0x46, 0x2, 0xff, 0x0, 0x3, 0x4, 0x0, 0x3b, 0x91, 0x2e5, 0x40, 0x1aa, 0x9, 0x2, 0x38, 0x1, 0xfffd, 0x8}, [{0x6474e551, 0xee4, 0x7, 0x7, 0x1f, 0x32, 0x9, 0x8000}, {0x6, 0x1, 0x7cf9, 0x6, 0xadeaa43, 0xfffffffffffffff8, 0x4, 0x7ff}], "86c6ff8835508151a804fc7f5793777d474e2c710cfc6895b8798c034cc35cc8", ['\x00']}, 0x1d0) (async) ioctl$AUTOFS_DEV_IOCTL_PROTOSUBVER(r0, 0xc0189373, &(0x7f0000000040)=ANY=[@ANYBLOB="b619001e1a00000000000000", @ANYRES32=r2, @ANYBLOB='R\f\x00\x00\x00\x00\x00\x00./file0\x00']) [ 729.201541][T21900] loop1: detected capacity change from 0 to 2048 syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x9e, &(0x7f0000000200)=[{&(0x7f0000010000)="e3d23c9b039b782d1ca42bc6942259c8c47b1983aaba360653ad225827edfbce89746747015a4233aa06a5fa2a3c1d7300e0fc7f0400000001000000000000005f42485266535f4d080000000000000000c0d30100000000004050010000000000000000000000000000000000000000000000080000000000700200000000000600000000000000010000000000000000100000004000000040000000100000810000000600000000000000000000000000000003000000000000004103000000000000030000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7300"/320, 0x140, 0x10000}, {&(0x7f0000010140)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x10220}, {&(0x7f0000010160)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf10000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100"/256, 0x100, 0x10320}, {&(0x7f0000010260)="00000000000000000000000080d001000000000500000000000000000050010000000005000000000000000000d1010000000005000000000000000040d00100000000050000000000000000c0d0010000000005000000000000000040d10100000000050000000000000000000008000000000040020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000006000000000000000000d0010000000006000000000000000040d0010000000005000000000000000040d2010000000006000000000000000040d1010000000005000000000000000000000800000000004002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000006000000000000000080d10100000000070000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d10100000000070000000000000000000008000000000070020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d301000000000800000000000000004050010000000006000000000000000000d40100000000080000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d101000000000700000000000000000000080000000000700200000000000100"/640, 0x280, 0x10b20}, {&(0x7f00000104e0)="d72b388dd422ae1fac6560756b4b1379b554c44947e20bb63f1b1e8557ba812689746747015a4233aa06a5fa2a3c1d7300001000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e00005000"/224, 0xe0, 0x100000}, {&(0x7f00000105c0)="000000000000000000000000000000008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040010000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7372e5c8faf606e4ef14fa4f1cf5601c5484ebc700ae75d79229b0974e6e51132389746747015a4233aa06a5fa2a3c1d7300401000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0400000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x260, 0x103ea0}, {&(0x7f0000010820)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d738f7d3efb3bbfedb558b8f0814f601e88b901c3c1fd646cd85c2cb4f7905c79aa89746747015a4233aa06a5fa2a3c1d7300801000000000000000000000000001cc69cdb062bc42f0920c728c071d181b0100000000000000030000000000000002000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e00005000"/736, 0x2e0, 0x107dc0}, {&(0x7f0000010b00)="00000000000000000000000000000000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73b16b662eceb14c47adde3f8c8af4e91569692a21fbb91d7dfb8c8c0cf9372b9989746747015a4233aa06a5fa2a3c1d7300c01000000000000000000000000001cc69cdb062bc42f0920c728c071d181b0100000000000000040000000000000001000000000100000000000000cc00001000000000006b3f0000300000000000", 0x140, 0x10bf40}, {&(0x7f0000010c40)="000000000000000000000000000000000300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181bce4cd9db6436bbae98b325acd8fd3daabf6e3c7a5036dae9a2fcab098e78086e89746747015a4233aa06a5fa2a3c1d7300001100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000500000000000000", 0xa0, 0x10ffc0}, {&(0x7f0000010ce0)="97395440394ce9c009849c6c2fe0c5481803d6f6e532863b9b04fff54e68cbb189746747015a4233aa06a5fa2a3c1d7300401100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000700000000000000", 0x60, 0x114000}, {&(0x7f0000010d40)="2a726df457f0a0f5311914c14a3b04f9778ec11794f4f7017f6eb48ed2096f2489746747015a4233aa06a5fa2a3c1d7300801100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000a0000000000000002000000000000100000000000c60000400000000000933f00000800000000c0110000000000c700403e0000000000933f00"/160, 0xa0, 0x118000}, {&(0x7f0000010de0)="000000000000000000000000000000000000000000000000010000000000000081c5d1afa9fed1e26c648e36c3cb79cc785eaade40e7af0fffc68d989b8faa6389746747015a4233aa06a5fa2a3c1d7300c01100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0200000000000000040000000000000002000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f00003000"/192, 0xc0, 0x11bfe0}, {&(0x7f0000010ea0)="0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181b3d96e1502f577b58aabcbaea90c68393731ef70d1654f76421ed1018549b922689746747015a4233aa06a5fa2a3c1d7300001200000000000100000000000001cc69cdb062bc42f0920c728c071d181b0200000000000000030000000000000003000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e00005000"/288, 0x120, 0x11ffa0}, {&(0x7f0000010fc0)="800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf1010000000000000000000008000000000000c0000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7366f0744699fbe2cf297aea7237298e3e0173270cfefe903849e4d8e43dbe5c1389746747015a4233aa06a5fa2a3c1d7300401200000000000100000000000001cc69cdb062bc42f0920c728c071d181b020000000000000002000000000000000b000000000000100000000000c00000400000000000833f0000180000000000110000000000a900000000000000006b3f0000180000000000110000000000b005000000000000006b3f0000000000000040110000000000a90000000000000000533f0000180000000040110000000000b00700000000000000533f00000000000000c0110000000000a90000000000000000323f0000210000000000120000000000a90000000000000000113f0000210000000040120000000000a90000000000000000f03e0000210000000080120000000000a90000000000000000cf3e0000210000000000500000000000a90000000000000000ae3e0000210000000000500000000000c00000800000000000963e0000180000000000500000000000c00000800000000000b73e0000180000000080110000000000b00a000000000000000b3f0000000000000000500000000000c00000800000000000f33e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/768, 0x300, 0x123f00}, {&(0x7f00000112c0)="000000000000000000000000000000000000000000000000000000004000000000000000010000000000000400000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00a00000000000000010000000000000002000000000000000200000000000000b00200000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000008001000000000000010000000000000200000000000000f749500bf5df461dad3c98ef56978e4521fec78a3477da98b35198e4ee9be62689746747015a4233aa06a5fa2a3c1d7300801200000000000100000000000001cc69cdb062bc42f0920c728c071d181b02000000000000000a0000000000000006000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000010000000000933f0000000000000080110000000000c70040000000000000933f00000000000000c0120000000000c700403d0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000040500000000000c700c07f00000000008b3f00"/544, 0x220, 0x127ee0}, {&(0x7f00000114e0)="0000000000000000000000000000000001000000000000000300000000000000", 0x20, 0x12bfe0}, {&(0x7f0000011500)="e86b8d8d44d14a01d586be716ebbfd9f1ac0444af8ad753c7d4b9d0bbab9355689746747015a4233aa06a5fa2a3c1d7300005000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0400000000000000040000000000000007000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f0000300000000100000000000000cc0000500100000000db3e0000300000000100000000000000cc0000d00100000000ab3e0000300000000100000000000000cc00005002000000007b3e0000300000000100000000000000cc00005004000000004b3e00003000"/288, 0x120, 0x500000}, {&(0x7f0000011620)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181be08256d420affc3481ca8485efe63ed23e75a6df11b279d140cc16b3ecdc81c989746747015a4233aa06a5fa2a3c1d7300405000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000040000000000000003000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f00003000"/544, 0x220, 0x503ea0}, {&(0x7f0000011840)="00000000000000000000000000000000030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181ba9042c04fd68f8d37e4ae7a42d619f28b19ee95a591836886b936c3f7b2cb31589746747015a4233aa06a5fa2a3c1d7300805000000000000100000000000001cc69cdb062bc42f0920c728c071d181b030000000000000002000000000000000b000000000000100000000000a900000000000000007a3f0000210000000000100000000000c00000400000000000623f0000180000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000c00000800000000000323f0000180000000040500000000000a90000000000000000113f0000210000000080500000000000a90000000000000000f03e00002100000000c0500000000000a90000000000000000cf3e0000210000000000510000000000a90000000000000000ae3e0000210000000040510000000000a900000000000000008d3e0000210000000000d00000000000c00000800000000000753e0000180000000000500000000000c000008000000000008d3e0000180000000000d00000000000c00000800000000000753e0000180000000000500000000000c00000800000000000f33e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/672, 0x2a0, 0x507f60}, {&(0x7f0000011ae0)="0000000000000000000000010000000000000100000000000000000000000000000000010000000000000100000000000000010000000000000003000000000000000200000000000000b00500000000000000010000000000000003000000000000000200000000000000b00100000000000000010000000000000003000000000000000200000000000000b00a00000000000000010000000000000003000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00400000000000000004001000000000000010000000000000400000000000000010000000000000001000000000000000200000000000000008000000000000000010000000000000200000000000000010000000000000003000000000000000200000000000000b003000000000000004c1f330c71d4186a8a7aaf6d5a57aa321b82349eb6a532779a4f4a3c937768d389746747015a4233aa06a5fa2a3c1d7300c05000000000000100000000000001cc69cdb062bc42f0920c728c071d181b03000000000000000a0000000000000008000000000000100000000000c60000400000000000933f0000080000000040100000000000c70000010000000000933f0000000000000080110000000000c700803e0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700400000000000008b3f0000000000000080510000000000c700807e00000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f00"/640, 0x280, 0x50bec0}, {&(0x7f0000011d60)="0000000000000000010000000000000002000000000000000200000000000000cff1c57417e24dd8b151c4e92342213593a3cdbdf91559aa14f95a0af9b8919d89746747015a4233aa06a5fa2a3c1d7300005100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000010000000000000009000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b70100000a0000000000000084000000000000000026360000b70100"/384, 0x180, 0x50ffe0}, {&(0x7f0000011ee0)="000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x513680}, {&(0x7f0000011f40)="00000000000000000000000300000000000000000000000000000000c050000000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000030000000000", 0x60, 0x513720}, {&(0x7f0000011fa0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x513840}, {&(0x7f0000011fe0)="00000100000000000000000000000000000000401100000000000000000000000000004000000000000000000000000000000000000000000000010000000000", 0x40, 0x5138e0}, {&(0x7f0000012020)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x5139e0}, {&(0x7f0000012140)="00000000000000000000030000000000000000010000000000000040510000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x513b60}, {&(0x7f00000121c0)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x513c00}, {&(0x7f0000012200)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x513c80}, {&(0x7f0000012260)="000000000000000000000000000000000000030000000000000000000000000000000040500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300"/128, 0x80, 0x513d20}, {&(0x7f00000122e0)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x513e40}, {&(0x7f0000012320)="000000000000000000030000000000000000000000000000000080500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000", 0x60, 0x513ee0}, {&(0x7f0000012380)="a38875d5be905146cbf324a050e09e164296f5b0d26b713ffd141049709fe70689746747015a4233aa06a5fa2a3c1d7300405100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x514000}, {&(0x7f0000012420)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000bc1f0be5307acce07bb7f515d200262d5cd10e839efb5b121790970203b022a389746747015a4233aa06a5fa2a3c1d7300805100000000000100000000000001cc69cdb062bc42f0920c728c071d181b040000000000000002000000000000000d000000000000100000000000c00000400000000000833f0000180000000040100000000000a90000000000000000623f0000210000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000a90000000000000000293f0000210000000000500000000000c00000800000000000113f0000180000000040510000000000a90000000000000000f03e0000210000000080510000000000a90000000000000000cf3e00002100000000c0510000000000a90000000000000000ae3e0000210000000000d00000000000c00000800000000000963e0000180000000000500100000000c000008000000000007e3e0000180000000000d00100000000a900000000000000005d3e0000210000000000d00100000000c00000000200000000453e0000180000000000d00100000000c00000000200000000453e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/704, 0x2c0, 0x517f40}, {&(0x7f00000126e0)="000000000000000000000000000000000000010000000000002400000000000000000000000000000000004000000000000000010000000000002400000000000000010000000000000004000000000000000200000000000000b00100000000000000000000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000010000000000000004000000000000000200000000000000b00a00000000000000010000000000000004000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00500000000000000000001000000000000010000000000000400000000000000010000000000000004000000000000000200000000000000b00400000000000000010000000000000001000000000000000200000000000000010000000000000004000000000000000200000000000000b003000000000000000080000000000000000100000000000002000000000000007d6a9f0ef4a5e5a3153df95598c4e19528767c509e021351fed84a75dd7ede7789746747015a4233aa06a5fa2a3c1d7300c05100000000000100000000000001cc69cdb062bc42f0920c728c071d181b04000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70040000000000000933f0000000000000080100000000000c700c0000000000000933f0000000000000080110000000000c700803e0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000040500000000000c700000100000000008b3f0000000000000000520000000000c700007e00000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700008000000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000040d00100000000c700c0ff0100000000733f00"/832, 0x340, 0x51be80}, {&(0x7f0000012a20)="00000000000000000000000000000000000000000000000001000000000000000100000000000000010000000000000002000000000000000300000000000000", 0x40, 0x51ffc0}, {&(0x7f0000012a60)="4f0cdd160281a75dd6a22956d0b92d0fe10996948e4821f5885797ed32b5bdf089746747015a4233aa06a5fa2a3c1d7300005001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1500000}, {&(0x7f0000012b60)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73fb9a36888a5159c0ca6ee9eb1a52369fe027e5e411818c1dc4ec56e56f9a59ef89746747015a4233aa06a5fa2a3c1d7300405001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1503dc0}, {&(0x7f0000012ea0)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73", 0x240, 0x1507dc0}, {&(0x7f00000130e0)="4f0cdd160281a75dd6a22956d0b92d0fe10996948e4821f5885797ed32b5bdf089746747015a4233aa06a5fa2a3c1d7300005001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1d00000}, {&(0x7f00000131e0)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73fb9a36888a5159c0ca6ee9eb1a52369fe027e5e411818c1dc4ec56e56f9a59ef89746747015a4233aa06a5fa2a3c1d7300405001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1d03dc0}, {&(0x7f0000013520)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73", 0x240, 0x1d07dc0}, {&(0x7f0000013760)="b8ea62be8f39d835299d4fdf38887eff45723fb2892e52c7f5e1be6ad171e37189746747015a4233aa06a5fa2a3c1d730000d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000002000000000000000c000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000040d00100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e00002100000000c0d10100000000a90000000000000000ae3e0000210000000000d20100000000a900000000000000008d3e0000210000000040d20100000000a900000000000000006c3e0000210000000080d20100000000a900000000000000004b3e00002100000000c0d20100000000a900000000000000002a3e0000210000000000d20100000000a900000000000000002a3e0000210000000000d20100000000a90000000000000000123e0000210000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/512, 0x200, 0x2500000}, {&(0x7f0000013960)="00000000000000000000000000000000000000000000000000000000000000010000000000000005000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00a00000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000005000000000000000200000000000000b00700000000000000010000000000000005000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000ab1c55044f8ab682d2363c61ebdcf0c870797cffee9b0ccf010741aff3716a1489746747015a4233aa06a5fa2a3c1d730040d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x2503e40}, {&(0x7f0000013bc0)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000e519fd80a33ac143f5c49ceef4d21b59fb8c17d234d43330d98ea81c76784c3789746747015a4233aa06a5fa2a3c1d730080d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007e3700003c0000000401000000000000010000000000000000de360000a000000004010000000000000c0001000000000000cf3600000f00000004010000000000001822a8f12600000000a03600002f000000040100000000000018d65ba13500000000713600002f00000004010000000000006c0000000000000000523600001f0000000501000000000000010000000000000000b2350000a000000005010000000000000c0001000000000000943500001e0000000601000000000000010000000000000000f4340000a000000006010000000000000c0001000000000000e13400001300000006010000000000006c0000000000000000683400007900"/992, 0x3e0, 0x2507f40}, {&(0x7f0000013fa0)="0000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0404010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000ee58cbab52ffe21f9d7e1e2f4aa7e524b8d3b8d1073d0e8dec5698b16fd0ec0889746747015a4233aa06a5fa2a3c1d7300c0d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000853600003c0000000401000000000000010000000000000000e5350000a000000004010000000000000c0001000000000000d63500000f00000004010000000000001822a8f12600000000a73500002f000000040100000000000018d65ba13500000000783500002f00000004010000000000006c0000000000000000593500001f0000000501000000000000010000000000000000b9340000a000000005010000000000000c00010000000000009b3400001e00000005010000000000006c000000000000000066340000350000000601000000000000010000000000000000c6330000a000000006010000000000000c0001000000000000b33300001300000006010000000000006c00000000000000003a3300007900"/3872, 0xf20, 0x250b4c0}, {&(0x7f0000014ec0)="0000000000000000000000000000000000000000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531070000000000000007000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000270000000000000027000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530070000000000000007000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c653003010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0406010000000000000100000000000000000700000000000000000009000166696c652e636f6c6405010000000000000100000000000000000700000000000000000005000166696c653305010000000000000100000000000000000700000000000000000005000166696c653204010000000000000100000000000000000700000000000000000005000166696c653101010000000000000100000000000000000700000000000000000005000266696c653004010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e030000000000000007000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000681f1f63000000005011fe04681f1f63000000005011fe04661f1f630000000000000000900456bc2bf1c67d22495a2f8f4581f1c1f7191d861a76cb6d77f74723258a0089746747015a4233aa06a5fa2a3c1d730000d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xd00, 0x250f380}, {&(0x7f0000015bc0)="686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5fa99b5d8dd7fea43a24642add984362c9d443e7c2260574d9de3d22c31bf90d3d89746747015a4233aa06a5fa2a3c1d730040d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b05000000000000000700000000000000", 0xc0, 0x2513fa0}, {&(0x7f0000015c80)="9830068bc7c407fb444de0d227963c690dc38b702df9bdcc06c4c4fa57d3c6e789746747015a4233aa06a5fa2a3c1d730080d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e0000210000000080d10100000000a900000000000000009a3e00002100000000c0d10100000000a90000000000000000793e0000210000000000d20100000000a90000000000000000583e0000210000000000d30100000000a90000000000000000373e0000210000000040d30100000000a90000000000000000163e0000210000000080d30100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x2518000}, {&(0x7f0000015e40)="0000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00a00000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000022082eef38f5258d79683ce27a579af5c269ea0de4cbe5d05076213b1f669c7e89746747015a4233aa06a5fa2a3c1d7300c0d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x251be40}, {&(0x7f00000160a0)="0000000000000000000000000000000000000000000000000000000002002e2e05000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f6300000000000000000000000000000000000000003cc8943d3e025f7a538ccfec80d308d1758ac8d7b8744c698f90d5fc058ed4a689746747015a4233aa06a5fa2a3c1d730000d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b050000000000000009000000000000000100000000d743525573ac41effb85e6fd1243b886e6933f0000080000000000", 0x140, 0x251ff40}, {&(0x7f00000161e0)="0000000000000000000000000000000000000000000000000500000000000000e0d48d4137ad71b93153a5c7dca00968e4547ae0daa76742c84706680f5a23ce89746747015a4233aa06a5fa2a3c1d730040d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/320, 0x140, 0x2523fe0}, {&(0x7f0000016320)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b3a618ec787b41985f939fcbd3e2a3feaa55f0a49b990e32bda8d4b700ee2b20289746747015a4233aa06a5fa2a3c1d730080d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b06000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000080d00100000000c700c0000000000000733f0000000000000080d10100000000c70040000000000000733f0000000000000000d30100000000c70000fd0100000000733f00"/800, 0x320, 0x2527ea0}, {&(0x7f0000016640)="00000000000000000000000000000000000000000000000003000000000000000200000000000000010000000000000001000000000000000100000000000000ea02ec9122398e4fec4ee69336bce20678181edf74f1a3fccb94e5896222334989746747015a4233aa06a5fa2a3c1d7300c0d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x252bfc0}, {&(0x7f0000016800)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x252f3a0}, {&(0x7f0000016880)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252f4c0}, {&(0x7f00000168e0)="0000000000000000000000000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252f560}, {&(0x7f0000016960)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x252f720}, {&(0x7f00000169c0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x252f840}, {&(0x7f0000016a00)="0000050000000000000000000000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/96, 0x60, 0x252f8e0}, {&(0x7f0000016a60)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x252f9e0}, {&(0x7f0000016b80)="00000000000000000000050000000000000000010000000000000040d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x252fb60}, {&(0x7f0000016c00)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x252fc00}, {&(0x7f0000016c40)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252fc80}, {&(0x7f0000016ca0)="000000000000000000000000000000000000060000000000000000000000000000000040d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252fd20}, {&(0x7f0000016d20)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x252fe40}, {&(0x7f0000016d60)="000000000000000000060000000000000000000000000000000000d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x252fee0}, {&(0x7f0000016dc0)="afafb14245be42af7264177acc341544c9beafc5000a1f5390c76ebd842a527189746747015a4233aa06a5fa2a3c1d730000d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b07000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70040000000000000733f0000000000000040d20100000000c700c0000000000000733f00000000000000c0d30100000000c70040fc0100000000733f000000", 0x1c0, 0x2530000}, {&(0x7f0000016f80)="0000000000000000000000000000000000000000000000000400000000000000020000000000000001000000000000000100000000000000010000000000000055747e6bc109e73765fd8e28f5b8907767f05ab539122092149c8a5109bd605e89746747015a4233aa06a5fa2a3c1d730040d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x2533fc0}, {&(0x7f0000017140)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x25373a0}, {&(0x7f00000171c0)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x25374c0}, {&(0x7f0000017220)="0000000000000000000000000000000000000000070000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x2537560}, {&(0x7f00000172a0)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x2537720}, {&(0x7f0000017300)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x2537840}, {&(0x7f0000017340)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x25378e0}, {&(0x7f00000173a0)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x25379e0}, {&(0x7f00000174e0)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x2537b60}, {&(0x7f00000175c0)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x2537c80}, {&(0x7f0000017620)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x2537d20}, {&(0x7f00000176a0)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x2537e40}, {&(0x7f00000176e0)="000000000000000000070000000000000000000000000000000080d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x2537ee0}, {&(0x7f0000017740)="05ea6b8aacc975cadcf1604ca7d007b138efd5936ab5965ad11b90d4b130464d89746747015a4233aa06a5fa2a3c1d730080d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x2538000}, {&(0x7f0000017840)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b000000000000000000000000000000000000000000000000000000000000000000000000000000009ac0aaf8165d4e3f003ab2a5afc8457b451cf57e81c96d7bd99a90808bd2c23b89746747015a4233aa06a5fa2a3c1d7300c0d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/672, 0x2a0, 0x253bee0}, {&(0x7f0000017ae0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x253f3a0}, {&(0x7f0000017b60)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x253f4c0}, {&(0x7f0000017bc0)="0000000000000000000000000000000000000000080000000000000000000000000000000040d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800"/128, 0x80, 0x253f560}, {&(0x7f0000017c40)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x253f720}, {&(0x7f0000017ca0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x253f840}, {&(0x7f0000017ce0)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x253f8e0}, {&(0x7f0000017d40)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x253f9e0}, {&(0x7f0000017e80)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x253fb60}, {&(0x7f0000017f60)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x253fc80}, {&(0x7f0000017fc0)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x253fd20}, {&(0x7f0000018040)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x253fe40}, {&(0x7f0000018080)="000000000000000000080000000000000000000000000000000000d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800000000000000", 0x60, 0x253fee0}, {&(0x7f00000180e0)="1e501bc81c61e7572837cacd4469b7133fe08ac28ca12b2332186229bfb93dd089746747015a4233aa06a5fa2a3c1d730000d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e00002100000000c0d10100000000a900000000000000009a3e0000210000000000d20100000000a90000000000000000793e0000210000000080d30100000000a90000000000000000583e00002100000000c0d30100000000a90000000000000000373e0000210000000000d40100000000a90000000000000000163e0000210000000040d40100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x2540000}, {&(0x7f00000182a0)="0000000000000000000000000000000000000000000000000000010000000000000008000000000000000200000000000000b00a00000000000000010000000000000008000000000000000200000000000000b00200000000000000010000000000000008000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000c44f7f10463c8b2b2c62dd163cdbb0fa304ae64d3251a27db4e3b16478c4f47089746747015a4233aa06a5fa2a3c1d730040d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b08000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70080000000000000733f0000000000000040d20100000000c70040010000000000733f0000000000000080d40100000000c70080fb0100000000733f000000", 0x380, 0x2543e40}, {&(0x7f0000018620)="00000000000000000000000000000000000000000000000004000000000000000200000000000000010000000000000001000000000000000100000000000000", 0x40, 0x2547fc0}, {&(0x7f0000018660)="66430b1f4a39ee8b3021ad29f69d28ee4c0f9ccd09472a0632d42746f13699d589746747015a4233aa06a5fa2a3c1d73000000040000000001000000000000005f42485266535f4d080000000000000000c0d30100000000004050010000000000000000000000000000000000000000000000080000000000700200000000000600000000000000010000000000000000100000004000000040000000100000810000000600000000000000000000000000000003000000000000004103000000000000030000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7300"/320, 0x140, 0x4000000}, {&(0x7f00000187a0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x4000220}, {&(0x7f00000187c0)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf10000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100"/256, 0x100, 0x4000320}, {&(0x7f00000188c0)="00000000000000000000000080d001000000000500000000000000000050010000000005000000000000000000d1010000000005000000000000000040d00100000000050000000000000000c0d0010000000005000000000000000040d10100000000050000000000000000000008000000000040020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000006000000000000000000d0010000000006000000000000000040d0010000000005000000000000000040d2010000000006000000000000000040d1010000000005000000000000000000000800000000004002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000006000000000000000080d10100000000070000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d10100000000070000000000000000000008000000000070020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d301000000000800000000000000004050010000000006000000000000000000d40100000000080000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d101000000000700000000000000000000080000000000700200000000000100"/640, 0x280, 0x4000b20}, {&(0x7f0000018b40)="b8ea62be8f39d835299d4fdf38887eff45723fb2892e52c7f5e1be6ad171e37189746747015a4233aa06a5fa2a3c1d730000d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000002000000000000000c000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000040d00100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e00002100000000c0d10100000000a90000000000000000ae3e0000210000000000d20100000000a900000000000000008d3e0000210000000040d20100000000a900000000000000006c3e0000210000000080d20100000000a900000000000000004b3e00002100000000c0d20100000000a900000000000000002a3e0000210000000000d20100000000a900000000000000002a3e0000210000000000d20100000000a90000000000000000123e0000210000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/512, 0x200, 0x4500000}, {&(0x7f0000018d40)="00000000000000000000000000000000000000000000000000000000000000010000000000000005000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00a00000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000005000000000000000200000000000000b00700000000000000010000000000000005000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000ab1c55044f8ab682d2363c61ebdcf0c870797cffee9b0ccf010741aff3716a1489746747015a4233aa06a5fa2a3c1d730040d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x4503e40}, {&(0x7f0000018fa0)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000e519fd80a33ac143f5c49ceef4d21b59fb8c17d234d43330d98ea81c76784c3789746747015a4233aa06a5fa2a3c1d730080d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007e3700003c0000000401000000000000010000000000000000de360000a000000004010000000000000c0001000000000000cf3600000f00000004010000000000001822a8f12600000000a03600002f000000040100000000000018d65ba13500000000713600002f00000004010000000000006c0000000000000000523600001f0000000501000000000000010000000000000000b2350000a000000005010000000000000c0001000000000000943500001e0000000601000000000000010000000000000000f4340000a000000006010000000000000c0001000000000000e13400001300000006010000000000006c0000000000000000683400007900"/992, 0x3e0, 0x4507f40}, {&(0x7f0000019380)="0000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0404010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000ee58cbab52ffe21f9d7e1e2f4aa7e524b8d3b8d1073d0e8dec5698b16fd0ec0889746747015a4233aa06a5fa2a3c1d7300c0d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000853600003c0000000401000000000000010000000000000000e5350000a000000004010000000000000c0001000000000000d63500000f00000004010000000000001822a8f12600000000a73500002f000000040100000000000018d65ba13500000000783500002f00000004010000000000006c0000000000000000593500001f0000000501000000000000010000000000000000b9340000a000000005010000000000000c00010000000000009b3400001e00000005010000000000006c000000000000000066340000350000000601000000000000010000000000000000c6330000a000000006010000000000000c0001000000000000b33300001300000006010000000000006c00000000000000003a3300007900"/3872, 0xf20, 0x450b4c0}, {&(0x7f000001a2a0)="0000000000000000000000000000000000000000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531070000000000000007000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000270000000000000027000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530070000000000000007000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c653003010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0406010000000000000100000000000000000700000000000000000009000166696c652e636f6c6405010000000000000100000000000000000700000000000000000005000166696c653305010000000000000100000000000000000700000000000000000005000166696c653204010000000000000100000000000000000700000000000000000005000166696c653101010000000000000100000000000000000700000000000000000005000266696c653004010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e030000000000000007000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000681f1f63000000005011fe04681f1f63000000005011fe04661f1f630000000000000000900456bc2bf1c67d22495a2f8f4581f1c1f7191d861a76cb6d77f74723258a0089746747015a4233aa06a5fa2a3c1d730000d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xd00, 0x450f380}, {&(0x7f000001afa0)="686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5fa99b5d8dd7fea43a24642add984362c9d443e7c2260574d9de3d22c31bf90d3d89746747015a4233aa06a5fa2a3c1d730040d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b05000000000000000700000000000000", 0xc0, 0x4513fa0}, {&(0x7f000001b060)="9830068bc7c407fb444de0d227963c690dc38b702df9bdcc06c4c4fa57d3c6e789746747015a4233aa06a5fa2a3c1d730080d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e0000210000000080d10100000000a900000000000000009a3e00002100000000c0d10100000000a90000000000000000793e0000210000000000d20100000000a90000000000000000583e0000210000000000d30100000000a90000000000000000373e0000210000000040d30100000000a90000000000000000163e0000210000000080d30100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x4518000}, {&(0x7f000001b220)="0000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00a00000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000022082eef38f5258d79683ce27a579af5c269ea0de4cbe5d05076213b1f669c7e89746747015a4233aa06a5fa2a3c1d7300c0d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x451be40}, {&(0x7f000001b480)="0000000000000000000000000000000000000000000000000000000002002e2e05000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f6300000000000000000000000000000000000000003cc8943d3e025f7a538ccfec80d308d1758ac8d7b8744c698f90d5fc058ed4a689746747015a4233aa06a5fa2a3c1d730000d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b050000000000000009000000000000000100000000d743525573ac41effb85e6fd1243b886e6933f0000080000000000", 0x140, 0x451ff40}, {&(0x7f000001b5c0)="0000000000000000000000000000000000000000000000000500000000000000e0d48d4137ad71b93153a5c7dca00968e4547ae0daa76742c84706680f5a23ce89746747015a4233aa06a5fa2a3c1d730040d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/320, 0x140, 0x4523fe0}, {&(0x7f000001b700)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b3a618ec787b41985f939fcbd3e2a3feaa55f0a49b990e32bda8d4b700ee2b20289746747015a4233aa06a5fa2a3c1d730080d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b06000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000080d00100000000c700c0000000000000733f0000000000000080d10100000000c70040000000000000733f0000000000000000d30100000000c70000fd0100000000733f00"/800, 0x320, 0x4527ea0}, {&(0x7f000001ba20)="00000000000000000000000000000000000000000000000003000000000000000200000000000000010000000000000001000000000000000100000000000000ea02ec9122398e4fec4ee69336bce20678181edf74f1a3fccb94e5896222334989746747015a4233aa06a5fa2a3c1d7300c0d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x452bfc0}, {&(0x7f000001bbe0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x452f3a0}, {&(0x7f000001bc60)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452f4c0}, {&(0x7f000001bcc0)="0000000000000000000000000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452f560}, {&(0x7f000001bd40)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x452f720}, {&(0x7f000001bda0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x452f840}, {&(0x7f000001bde0)="0000050000000000000000000000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/96, 0x60, 0x452f8e0}, {&(0x7f000001be40)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x452f9e0}, {&(0x7f000001bf60)="00000000000000000000050000000000000000010000000000000040d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x452fb60}, {&(0x7f000001bfe0)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x452fc00}, {&(0x7f000001c020)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452fc80}, {&(0x7f000001c080)="000000000000000000000000000000000000060000000000000000000000000000000040d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452fd20}, {&(0x7f000001c100)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x452fe40}, {&(0x7f000001c140)="000000000000000000060000000000000000000000000000000000d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x452fee0}, {&(0x7f000001c1a0)="afafb14245be42af7264177acc341544c9beafc5000a1f5390c76ebd842a527189746747015a4233aa06a5fa2a3c1d730000d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b07000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70040000000000000733f0000000000000040d20100000000c700c0000000000000733f00000000000000c0d30100000000c70040fc0100000000733f000000", 0x1c0, 0x4530000}, {&(0x7f000001c360)="0000000000000000000000000000000000000000000000000400000000000000020000000000000001000000000000000100000000000000010000000000000055747e6bc109e73765fd8e28f5b8907767f05ab539122092149c8a5109bd605e89746747015a4233aa06a5fa2a3c1d730040d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x4533fc0}, {&(0x7f000001c520)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x45373a0}, {&(0x7f000001c5a0)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x45374c0}, {&(0x7f000001c600)="0000000000000000000000000000000000000000070000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x4537560}, {&(0x7f000001c680)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x4537720}, {&(0x7f000001c6e0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x4537840}, {&(0x7f000001c720)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x45378e0}, {&(0x7f000001c780)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x45379e0}, {&(0x7f000001c8c0)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x4537b60}, {&(0x7f000001c9a0)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x4537c80}, {&(0x7f000001ca00)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x4537d20}, {&(0x7f000001ca80)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x4537e40}, {&(0x7f000001cac0)="000000000000000000070000000000000000000000000000000080d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x4537ee0}, {&(0x7f000001cb20)="05ea6b8aacc975cadcf1604ca7d007b138efd5936ab5965ad11b90d4b130464d89746747015a4233aa06a5fa2a3c1d730080d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x4538000}, {&(0x7f000001cc20)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b000000000000000000000000000000000000000000000000000000000000000000000000000000009ac0aaf8165d4e3f003ab2a5afc8457b451cf57e81c96d7bd99a90808bd2c23b89746747015a4233aa06a5fa2a3c1d7300c0d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/672, 0x2a0, 0x453bee0}, {&(0x7f000001cec0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x453f3a0}, {&(0x7f000001cf40)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x453f4c0}, {&(0x7f000001cfa0)="0000000000000000000000000000000000000000080000000000000000000000000000000040d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800"/128, 0x80, 0x453f560}, {&(0x7f000001d020)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x453f720}, {&(0x7f000001d080)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x453f840}, {&(0x7f000001d0c0)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x453f8e0}, {&(0x7f000001d120)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x453f9e0}, {&(0x7f000001d260)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x453fb60}, {&(0x7f000001d340)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x453fc80}, {&(0x7f000001d3a0)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x453fd20}, {&(0x7f000001d420)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x453fe40}, {&(0x7f000001d460)="000000000000000000080000000000000000000000000000000000d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800000000000000", 0x60, 0x453fee0}, {&(0x7f000001d4c0)="1e501bc81c61e7572837cacd4469b7133fe08ac28ca12b2332186229bfb93dd089746747015a4233aa06a5fa2a3c1d730000d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e00002100000000c0d10100000000a900000000000000009a3e0000210000000000d20100000000a90000000000000000793e0000210000000080d30100000000a90000000000000000583e00002100000000c0d30100000000a90000000000000000373e0000210000000000d40100000000a90000000000000000163e0000210000000040d40100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x4540000}, {&(0x7f000001d680)="0000000000000000000000000000000000000000000000000000010000000000000008000000000000000200000000000000b00a00000000000000010000000000000008000000000000000200000000000000b00200000000000000010000000000000008000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000c44f7f10463c8b2b2c62dd163cdbb0fa304ae64d3251a27db4e3b16478c4f47089746747015a4233aa06a5fa2a3c1d730040d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b08000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70080000000000000733f0000000000000040d20100000000c70040010000000000733f0000000000000080d40100000000c70080fb0100000000733f000000", 0x380, 0x4543e40}, {&(0x7f000001da00)="00000000000000000000000000000000000000000000000004000000000000000200000000000000010000000000000001000000000000000100000000000000", 0x40, 0x4547fc0}], 0x0, &(0x7f000001da40), 0x1) 04:31:44 executing program 4: [ 729.287123][T21900] EXT4-fs (loop1): couldn't mount as ext3 due to feature incompatibilities r0 = syz_mount_image$ntfs3(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4045ff, 0x15, &(0x7f0000000bc0)=[{&(0x7f0000010000)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f0000000000000400000000000000ff00000000000000f600000001", 0x45}, {&(0x7f00000001c0)="813e37f8f9bc53b8d2190168e4d3d1b4f63c4b993e82f1dfe7354fcd09930a92c992e6966329bbc621822681bb9fd0f4af588ab5629a7d33e299719b300fdac1ba10427c39a282e682073ec94414870644efe15b", 0x54, 0x2000}, {&(0x7f0000010120)="46494c453000030000000000000000000100010038000100980100000004000000000000000000000400000000000000030000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000000000600000000000000040324004d00460054000000000000008000000048000000010040000000010000000000000000003e00000000000000400000000000000000f003000000000000f003000000000000f0030000000000113f040000000000b0000000480000000100400000000300000000000000000000000000000000004000000000000000001000000000000020000000000000002000000000000000110102", 0x18b, 0x4000}, {&(0x7f0000000040)="00000000000000000000000000000000000000000000000000000000000003", 0x1f, 0x41e0}, {&(0x7f00000012c0)="00000000000000000000000000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000000000000000000008000000000000001101020000000000ffffffff0000030046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000001000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2b000000000000027bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040100000000000000010000000000000001000000000000000100000001800002101ff23ae27c955ecdc4c411eda9ff9aef80327277a317c6837c3f760c829084956155c6b3bc5a32d760c9b69319ed8322f04ad1c757dd03be5", 0x1e2, 0x43a0}, {&(0x7f00000104c0)="000000000000000000000000000000000000000000000000000000000000020046494c45300003000000000000000000020000e538000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f00000000000000400000000000000000000400000000000000040000000000e10004000000000021400001", 0x16c, 0x47e0}, {&(0x7f0000000080)="000000000000000000a6000000000000000000000000000000000000000002183e0554dcb08c0e703aaec8625c8a028b1926464a8597351517175b9782f5a3f868c5de1db6fa29", 0x47, 0x49e0}, {&(0x7f0000010660)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000040000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c00000018000000000000000000000003010000000000008000000018", 0x1e5, 0x4be0}, {&(0x7f0000000240)="000000000000000000000000000000000000000000000000000000000000040046494c453000030000000000000000000400010038000100c00100000004000000000000000000000400000004000000020000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000000a000000000000000a000000000000110146", 0x1d3, 0x4fe0}, {&(0x7f00000005c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000500010038000300000200000004000000000000000000000600000005000000030000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d801132d87d24ec4d801132d87d24ec4d80100ab2bd24ec4d80126000010000000000000000000000000300000006000000000001800000001004400000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000100000000000000400000000000000000200000000000002c100000000000002c10000000000000110243000000000090000000580000000004180000000300380000002000000024004900330030003000000001000000001000000100000010000000280000002800000001000000000000000000000018000000030000000000000000000000a00000005000000001044000000005000000000000000000000000000000000048000000000000000010000000000000001000000000000000100000000000002400490033003000110145", 0x1eb, 0x53e0}, {&(0x7f0000010ca0)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000600010038000100500100000004000000000000000000000300000006000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d006100700080000000480000000100400000000100000000000000000000000000000000004000000000000000001000000000000040000000000000004000000000000000110147", 0x163, 0x57e0}, {&(0x7f0000011040)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000800010038000100780100000004000000000000000000000400000008000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000003005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c0075007300ffff00000000800000001800000000001800000002000000000018000000800000005000000001044000000001000000000000000000fe01000000000000480000000000000000f01f000000000000f01f00000000000000000000000000240042006100640002ff01", 0x18b, 0x5fe0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000900010038000900000300000004000000000000000000000500000009000000030000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000200000000007032400530065006300750072006500800000005000000001044000000002000000000000000000400000000000000048000000000000000010040000000000700104000000000070010400000000002400530044005300114148000000000090000000e00000000004180000000300c00000002000000024005300440048000000000012000000001000000100000010000000b0000000b000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000a0ddde4202010000a0ddde42020100000001000000000000640000004900490018001400000000003000080000000300f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200000090000000c80000000004180000000400a800000020000000240053004900490000000000100000000010000001000000100000009800000098000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c0000001400140000000000280004000000000002010000a0ddde420201000000010000000000006400000000000000000000001000000002", 0x315, 0x63e0}, {&(0x7f0000011520)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000a0001003800010098010000000400000000000000000000040000000a000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000003005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000001f000000000000004000000000000000000002000000000000000200000000000000020000000000212089", 0x163, 0x67e0}, {&(0x7f0000013b20)="d000000020000000000018000000030008000000180000002d0000003c000000e00000005800000000001800000004003c000000180000001400000000060400244c585549440000000000001400000000060400244c584749440000000000001400000000060400244c584d4f4400ed8100000000000000ffffffff0000e20046494c452a00030000000000000000000000000030000000380000000004", 0x9e, 0xc380}, {&(0x7f000001aa40)="494e4458280009000000000000000000000000000000000028000000b8060000e80f0000000000000d00d801000000000000000000000000000000000000000004000000000004006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a000000000000060000000000000008032400410074007400720044006500660000000000010008000000000008006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c007500730000000000070006000000000006006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000070000000000070060004c0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010020000000000000002000000000000006000000000000000503240042006f006f00740069006c000b00000000000b006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec40d0000ab2bd24ec4d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640002000000000002006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c006500000000000100000000000000010060004a0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000000000600000000000000040324004d004600540000000000000001000000000001006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d0069007200720000000200000009000000000009006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000000000000000000000000000000000600002000000000070324005300650063007500720065000a00000000000a006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000020000000d00000002000000000006000000000000000703240055007000430061007300650003000000000003006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650005000000000005005800440000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e0000000000200000000000010068005400000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100100000000000006400000000000000200000002d0000000900660069006c0065002e0063006f006c006400000000001b0000000000010060004c0000000000050000000000050073a685d24ec4d80173a685d24ec4d80173a685d24ec4d80173a685d24ec4d80100000000000000000000000000000000200000102d0000000500660069006c0065003000000000001e0000000000010060004c0000000000050000000000050073a685d24ec4d801132d87d24ec4d801132d87d24ec4d80173a685d24ec4d80100100000000000000a0000000000000020000000590000000500660069006c006500310000000d001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c0065003200000000001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c00650033000000000000000000000000001000000002", 0x6cd, 0x45000}, {&(0x7f000001b200)="10", 0x1, 0x46080}, {&(0x7f00000007c0)="f7ffffffffff6c85507e207950cbb02575507700fffb9a55fb8d253755da1453094bdf12f9dea56eca6103d9a0c7c7f10482f7433c1b819f5bfc850c99b3f9d627a7b397fdf4f0303f271f526a9a7890a9a155af4ff2f497feffaec1f6fc8abc8717cb83a803b225e2e5497563b268a3beb1f964000000000000002061dff0281b6dc6572ed135b36f9c052504062fc60097e40f9be0fb831dad3a996176570845730000000000000000000095fe28614719bf7f7be9f18fa6a54f848514c8763ad7e6e41e09dd208a22b79d97053f495ba598be066ec1de22bd9e79851d13117d3e8b8248ab4673f6b8f473bf4c1f5d730c7ededcd9705ef3dd745e531edb04fc1b861c2cb57e107c2eaa0a2ccbc67ba70b9af536564c93b73ab6cfafc58d339738640af0789756372a0b0d64ba25d4d1a703738459ff5a492de9f3ddce43b48b5e8d1228cb0600000000000000", 0x14e, 0x46ffe}, {&(0x7f000001b660)="f01203f80001000000000000000000007c0000000100048048000000580000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000102000000000005200000002002000001020000000000052000000020020000000000005124b30001010000007c00000001000480480000005800000000000000140000000200340002000000000014009f111200010100000000000512000000000018009f01120001020080000000052000000020020000010200000000000520000000200200000102000000000005200000002002000000000000a0ddde4202010000000100000000000064000000010004803000000040000000000000001400000002001c000100000000031400ff011f00010100000000000100000000010200000000000520000000200200000102000000000005200000002002", 0x15b, 0x48000}, {&(0x7f000003c0c0)="0000000000000000000000000000000000000000000000000000000000000400ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3fe5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffebdf0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}, {&(0x7f00000104a0)="00000000000000270000000000000000000000000000000000000000000002", 0x1f, 0x4045de}], 0x2, &(0x7f0000003580)=ANY=[], 0x1) sync() r1 = dup(r0) sync() r2 = open(&(0x7f0000000a40)='./bus\x00', 0x141a42, 0x0) r3 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) r4 = openat$fuse(0xffffffffffffff9c, &(0x7f0000000100), 0x2, 0x0) mount$fuseblk(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000440)={{'fd', 0x3d, r4}, 0x2c, {'rootmode', 0x3d, 0x2000}, 0x2c, {}, 0x2c, {}, 0x2c, {[{@blksize={'blksize', 0x3d, 0x800}}, {@default_permissions}]}}) ioctl$BTRFS_IOC_SUBVOL_CREATE_V2(r4, 0x50009418, &(0x7f00000014c0)={{r1}, 0x0, 0x2, @inherit={0x78, &(0x7f0000000ec0)={0x0, 0x6, 0x813, 0x401, {0x13, 0x1000, 0x4, 0x5, 0x80000000}, [0x8, 0x3, 0x3, 0x0, 0x6, 0x7f]}}, @name="9d54259130bff30e499f537f4aef530500886fffb6cde398556d8dcb978c17d92d40de7b6c1d71105050b0dc35e67f98c756a66f1833203284a6e5c9b65a2e794aebbf5b60caff6ba0f9ad8e74e25cbae7096b87d87bffa6e7e15a1a142b0dbf85f47916b1304ca50b24c8c480ba6202e6294de53b8c992fefe65956ef1309ee1eba6d87d8c93ce199f723560776d907c3bb1293b96a2e14c8b8eb0abe465fdab9afc969761fb28360413813d5f416b0ce159328d9cb9bf1f1bf5671632a34a3c6e66095cc3e57f1b585c31dbc6a08cd626f958b5bffdd3f74da27c91c76544995df5613ce5c987e7d518d044313b3b3bc0ce0e85faafac2296119e401595f06ab998073a04a060a778b28961dae5ee6591ac7c61ec9481918e5d5d9da4de801cb125b786d2bb1c6be43b8783067d6e331975b6788621f52acbb644fce9e92dcd28cb5329cd9d762f852bf5efd263ee611133f5ca10802e9140042766a871e299e814fca6a1d6ce63fd49e70c5fb453ba16f25c12fb08e5659f760b3725367cff649560cbc33eca2381e95e3d8af178977ce9a364beb5e5d4ba7f03085c5231b8a6b9f9ba3a528c673d4779660ee6405543c71a877c5d3a92b17e5db64e38152931d08398d6a4bc9440c1d6b8e92ec92050797c3a2e5f59441d0c859aee31af2a2009402dd0d2b3b7963b4030002c3163956b460c5a2cacae07a0a1313c950a26525a9ed019da654197f86c5a0a295e944d85a21fec7e2b4f58ee82ab584e342dbbe25a538a7db99cbe7fec45799cce1ad80b4657ab21f96d3988c4cbf6528feca773e429562b73f2885f824bc0f4c459b1e5081ecc6f4f29354ef0d63e43adc3a37a56f1b95174b89677f8d65bd8c1eb10e8105974eb5c253cda036fddcd5727c7fea91dfa0c0dfa70ad3969af2eb2e269db86f3fdc6670491ee84b3d062861753729fb004a56ff56f9366512e2800b25f5f37817a34b10a8cdee8cc26dade9face5323d8c46adecdf3db6595c7e6687ce00344c5269a3bb09d620d7e98800a4c738e6f8cdfc68e8b6427d0d087eadeadb4934e6c0c21f3f4656d734a60dc7dc503c02b7f77252b0c188ddf072a791fb7f94e82b89c8e971470f0e9f0d5465bd0a46e266055b89839b8aba495bd5146b2714a80a516e65074f3b01b3aabe361c0039382c213319de7619dd0607219e40baa5f9eec9025e1a1416af97d1b16f7df1b92f0ccf3d16b7ebbea0dbbc1ca94f701fec33864ae2f315f415adb4ebf58310c86ee31481473060c45d09dd4bf060ad8e773f4fef36d9a0b59a1342ccebebbdbd05548173e5ec3087de5727cec3a75b494cb0302346aff996fa0ed310b1f8c74bf5d95848a8be4463eb38807a94f591f8f83d3671ac4d52ea74db9fc96ddb1d3ecbf77b2c8d25945813bbd9522f8d9e7a9da5beb3c12367c95ac96f3a374494d5037f394d294c76cfccd62ae6531b937ab37f052205142f1f3f2c3897d0c3cbf32dbed0466d2a431db7f7bdd684b626768110c55eafa6802125a88afaff4464673278dd05160b329f7b11dfec21cb8756358248ddd1117f275b099b1157f0ab597613b92e53f6027060b9b12055acf393d90b7aea7c6fa66e6a0919f03a6531ca7376b14fd7a162f2398f3a72f6cd8e67201a150dee70c92590536c5d28a7d491a7cd5ab3e1cf3932f15b1807269dd0b5dbc1b3c0ad1b2b215e0c9ad5926711a24b0601a4ebdd27f26d55d7a50bd2d0e7a57ac4a47de58847c3b905e7a25ce44b16f249446c2cea9c44140a52bbc7a69422c9bde2211f14291bf41e6f7973003e2a924b2eb930c6ce2a78f16fec96a3cc567da3ea47b62b5f8be3b0f975f000d5a84fb5a31ee451e5689b9a9f1f9ed3f03f801873f1670063f5917fbe7b4bff1d7f5f0d3e4765f8fd3e2e2738e5da9d994df33afc345c6219d4111fa7b871f78a0e3d04ab9ea29a5d17cdb13d0cc78583850fec92af9af5110f7e0e16dd5ff3d609de67046e07fa60b7b5ee3e5b5179d9c4c4d5164726ec74b5e44d609f06f6c683514d2edc649a962b9784fa9de34dde7070dfb8cdf5d5e8dac30c87851856ffc2aafeca8898d9dc0d1a19442502870dd5c140e4a7f1c14d901231cd281cab4fcaba0c0be4dea9e54190f506485fdb5b7a56d1701e0cd274bf96e0e63e7984abe8a44da3de5196e27033c2e206c4cc4cee6ac581dea2c7b0ccfd99a368b3e2a9a5beb64ca88c1a16981c5e45ff17f90902eeb161e061ded6b10865086a3ccdaff7babca5a995cf242fcef39f4c19c68cb33e12de51bf2f43c69d686e8d7abf910877406438bb1c2eeffef762c35bfcbb09036f19cfcdb1d979505581f0c8cab342555659cce2b8ad08bd4482dd03d674f6cf3d06bafe39100932b0ed72cfb8ac52a1d9fb2189b6578685d06f3c165d3c58dc2f2e304b8be5afc6a8dcfb493cc3f229af23aed06646928bf3623478ac200b4d856b3a3f0733e5170a53a956cd0a74971128961af40accca95388ab683cb69dfb7fa7cae043a48bdfe2dae2ce18328c51ab34f574fd3cfc7ae07840f3f607dac74eacef982f4ef0b19555928670742e01fb16ef6953516a4929586399b88246a63342230c3edcfadf400a2e3530ffb4c231d8edafe12eacb5b20c010d0e069b5acddc4bdbedb283e2e6d124c47e12f0e5ccc0f187d49ccc80d44f53147161ebc61881a641aa802a0f87d62c421a4fabeb67e0e21a32a6513ff7510d4c90a435ac957c0dd56ae4e887bcfdecc1145d3f3fd846ca3fb673e307b96c8106906af9d9e1e5783939a78963d88e123a05b795d87bdc0da98a3b350f3a5a470dcb1d3eecc4ebea3e165c4a0a2c0c2285ea60e6241f373249fbef9c35565b5133091df59ad584f728fa9ff1a2b244f818d172cb70e946f17443fd1ddb88c00fbfb6203f88de8b925301aa6dc4f232fdb0ef20b6c770d7398d5901f084f4e57e0264cd883d4b7b3204425575861caa22189664230664802dc26158ec4a44c508e4ecd66dccc412a614fadb9cba1899a54bcc994a7697b3f6b903f1eeb203521de89265bf4802b6ed6d94a37567b6608d7dafcc4c4f90a14347aa2c460f6e7856bcd2483ac2096dfdcf86422da1c69a1ee74b0c4f00072fd8ff1767d3217b7d9a558d483e6c24f338be7b1f4969ef91177a1617de001d6c973b283897008f0d4edeea96ed877577b82a4120418d2f47e6f341f173a3889317740fa2309338fc498ad55654b68fce1ac34a8f1bab0d8257dcf8333a944dee205ca063fdf89573a9ccdd5f34bd54edffb0ce3f67abaa3d54dcffd8ba32c3cb91f7bd2a69a4e73abdc0b0a3f90d7a13c8adcbab7196bf89524eaaad3e9ac6ad2a73b00ffec90fc7125fce345fa2ae2f607166ec37cf252693201679271800b986a351f7557d33598d9b52a6609922874c2508f3a2830795d98e5dc167ba5ef22040befeed9ebf1afa4500f5728091b3ad8224a50b86199cae87bb860a6c9af61ddffe32f7dfaec7a72dede6661ddc520bc5b19b49b9f3a04119677d2d0a2d167b0d5b47a01eb842a589db02def681c3ad41bb52471ed6bc50682d968155675891ead1925f38df3d937797779e092095698158f72aed9125be5ee714952cfc5a0dd0362d97d4178e88e747f20c1b79c52759032ac6d586a8aeaf847337b09a61968aeb034fa205f24b20f93dc47f1ead0aa853073596b00ac0a72096c81845ad5dc49c68e0c8f110bd5b6b9f48141fbdd52513a2b1b00d08dfe4d199a449e99fa4a46e84c8c09035e64a40560106a4920c884dbebc48af30097cbb096dd0705c14a527f978966985983d5be5feb33591f6639633850949e13390aa23fcd700be760fdb10ef4f4b22809a5d2852ce7f410b18ba9aed1079531374c6385cfed1d20c0eb79f4d4c0c1188d47e27c530c11a830fb1d0af567e46c0555528516e97c50b586d0162b6972c7822b068588bc36427182dfe3425d3fd24de83e677a538f89580e92b19a56a2b7a4ba62581ba20351889f0809786662f089fff25f22a8810014f919a2a56e3d586994571faad28528bd7aa2c917fe9ece58c126de14d123521194b849a6d92f99495fe754c58e76070a853b714ed4a48edb68ea63395023f1a7689109a4724b7d5bd430657f836e84f72e3d62f72fee411e522fb88c4d13689cab2b763a4826cf1ba20b417e8e43909e050988f3720bcd442eb9980c5606004a77294fc95d15c4101c50ac6ab076130dcfc13df1575df4397138541528806e55c0f1018206a06ef661a27d17f851df81502592355e2e59fe595e5e12422e25a420e9e6f6e71798bc14ac8a8e32245482ffd79887c5245b434a8bbd5f382e043254a25dee2ed7b2b11c5ea0453f744be471c32e50c46ac44e2c9d42faed09b4374d1909e4fc90cb8e4a1dd1c74ed3652bca2d9b90112333db42fc7c66105ba3d5d6a096570bc7c647d03b07601e37cb77a1175712c9251587caa94a149b2f530a7d6eb8c2b7bd33034a89bc1ad5b29991ea150e521f0d36659307ab6f25acd723b763378356549050a23e77aa771dcdeddd1e74d13ae43141250e8cd5c9541fda64931618148dd183fe234ad9f833586174924450a9eb140129b6a53af4bab059e61c4d36f4a5c2984ed158be6e5958e321bcc58c7517483aa6f88f842db99c31f0e7af08dda7a23facb949817b61945f17593a8b84fa40a36e447a0a9a298552340edc8d49ed3e0115dfa8954358df8fec03735573600eff24a22e8d525045375e7697ff11dcf80c3098f04f1c954abf44480e71d958a610d0df34cb439f88ec0be048f512e8b56ed1d885289c62dd26a5c9e2f396ee15be8647b55aefa78fca0a62a1bdc570d9cfea12c4fc17ecb7e21276d71f25a84732f5a9ac549be5c792bb9cba6c9f6776caccb2a28de44e6a41c6807b361224bd5177704358ddc93f62a616c54e00d43d813879d40b5bc06e9515e5d1eabc93594a7e515c9b0df9dac0f27e46c6ac1736e8318f36389979b1de9749137d2545b414c7f76d95d1c6f5f40ea7e70db34422ea35f8771dd7be57a14b79eb1114aaebd0f944b59f878bac0b8857229791490a6cf40aaf2a70ad27551361f023eb3e16af3979f4d115b1ae9080ed857a05e25660a191ba16df31d1955cf0bbe61d7bcb416a9ebb326d32496ba93b3ee5896214bacd6b5d66ffa82288c3a4681e297e2bffea8f27bd46a0a531c8f3a811db599f220d268cf4df3b9bf18d38b3761889cf065d3d1db205dc23f50b1c6bd3bff1269150c760eb38011191c0573cdb8fd332c9b74928c2e9882430f26ce7870de87c9d9c8ee061809930d079fd398e73165bf83a828e6f2aaedadbf3ceb899a7ff96a3c42a7c325da79bc4d5f0d055d3d28cd9efecee5bd560ad6941dedc79c1b5a666533fa1d4b39fa4c302737911e1e49547f8c2de4061e788cc445181ff9ef62ee9f4342ebdc2efed20adccb7cc72b55a34139935a3e531071d7150a8f4c9bdd655809228533a6e94c04d466a0a814e1d0d693125d7d07b63d28cfc09899dcfab780aa4203694018150c4e3c6c3efca0572ff3765e79084fa5687a031b1fb577f41cf93247b06163081453c592b81da58b3d42ba3df452462ea782527d54300960faf4d7c3a47409b683d098e353c560207608592a48ac0fd1d72194c4fc4453214923c61c525c6aec9fad5607e651396f2d551e9c00910634"}) sendfile(r2, r3, 0x0, 0x80001d00c0d0) syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x100000, 0x28, &(0x7f0000000200)=[{&(0x7f0000000180)="040002008b004e", 0x7, 0x1}, {&(0x7f0000011900)="0700020035000100927f3000e30700000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0x8}, {&(0x7f00000119e0)="002a4c696e757820554446465300000000000000000000000405000000000000", 0x20, 0xff}, {&(0x7f0000010000)="0042454130310100"/32, 0x20, 0x8000}, {&(0x7f0000000ac0)="004e535230320100000000000000000000000000000000000000000000000000e68527d15138f260a3fd8f97b67ecd04dd1a83b427f95fe92bf9a2b3ec4cb8e8f3b7f4ac1174bc2658169baf625a246a0f22dafce1b6179e25252a5239bf7bf5a5e2bd290f71bc93cbb456a31d8f792794becccbda497e0c65b2", 0x7a, 0x8800}, {&(0x7f0000010060)="010002001d0001001aaef001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xc000}, {&(0x7f00000100e0)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c696e7578205544464653000000000000000000000004050000", 0xe0, 0xc0c0}, {&(0x7f00000101c0)="000000000000000001000000000000000000000000000000000000000000000006000200660001006ba8e8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000", 0x80, 0xc1e0}, {&(0x7f0000000b40)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200001000000000000000000000004000000001000000002a4c696e75782055444646530000000000000000000000040500"/128, 0x80, 0xc2c0}, {&(0x7f00000102c0)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f007000000000000000000000000000000000000050002007e000100879cf001620000000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xc3a0}, {&(0x7f0000000140)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xc4a0}, {&(0x7f00000103c0)="07000200ae000100927f3000630000000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0xc600}, {&(0x7f0000010480)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xc8e4}, {&(0x7f0000000080)="002a4c696e75782089bc1a03ef7eb9554439465300000000000000000000000405000000000000", 0x27, 0xc95d}, {&(0x7f00000104c0)="0800020061e400000000f0016500"/32, 0x20, 0xc9ff}, {&(0x7f00000104e0)="000002009100010021d4280170000000002a5544462053706172696e67205461626c65000000000050010405000000002000000000000000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffffb0020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff00400"/320, 0x140, 0xe000}, {&(0x7f0000010620)="09000200d70001000acb7600800000000010e607090c0c00355f4d010100000000000000000000001800000000000000000000000000000000000000000000000000000000000000010000002e000000b0020000d0020000002a4c696e757820554446465300000000000000000000000405000000000000060000000200000050015001010200"/160, 0xa0, 0x10000}, {&(0x7f00000106c0)="080002007d0001000000f0018100"/32, 0x20, 0x10201}, {&(0x7f00000106e0)="020002002200010076b5f00100010000002000006000000000200000e0070000", 0x20, 0x20000}, {&(0x7f0000010700)="08020200f5000100964b080000000000d00200005a000000fefeff000000eafeffffffffffffffffff1bd90000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0500ffffffff00"/118, 0x76, 0xa2000}, {&(0x7f0000010780)="0001020037000100bb77f001100000000010e607090c0c00354c12560300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e757855444600000000000000", 0x80, 0xa4000}, {&(0x7f0000010800)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000200000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001000000000000", 0xe0, 0xa40e0}, {&(0x7f00000108e0)="050102007c000100e5c6a8002000000000000000040000000100000400000000000000000000000000000000a53c00000200000000000000440100000000000001000000000000000010e607090c0c00354c12560010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000000000000000000000000000008000000440100003000"/192, 0xc0, 0xa6000}, {&(0x7f00000109a0)="05010200e4000100009920012100000000000000040000000100000400000000000003000000000000000000a57c00000100000000000000800000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001100000000000000000000008000000001010200b10001001b5818002100000001000a000002000020000000000000000000000000000000010102004b00010059b01c0021000000010000060002000022000000000000001200000000000866696c65300101020078000100c1751c0021000000010000060002000026000000000000001300000000000866696c653100"/320, 0x140, 0xa6200}, {&(0x7f0000010ae0)="050102003a00010060ffb0002200000000000000040000000100000500000000000001000000000000000000a57c000001000000000000001a0400000000000003000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000120000000000000000000000100000001a0400002300"/192, 0xc0, 0xa6400}, {&(0x7f0000010ba0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0xa6600}, {&(0x7f0000000dc0)="05010200c3000100b831aa00270000000000000004000000010000050000002f545fd99c54d30d6f078579d6c681db00000003000000000000000000a57c000001000000000000000a00000000000000000000000000edff0d3ea6eb7400c5041edbd66826ff0fe607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e5953dfffffff00000000000000f7ffffff07000000c2d8a400002a4c696e757820554446465300000000000000000000001400000000000000000000000a", 0xc5, 0xa6e00}, {&(0x7f0000011180)="05010200000001009d72c0002800000000000000040000000100000500000000000001000000000000000000a57c00000200000000000000282300000000000012000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000015000000000000000000000020000000000e0000290000000000000000000000281500003100"/224, 0xe0, 0xa7000}, {&(0x7f0000000640)="01010200c00001001b5818003000000001000a00000200002000000000000000000000000000000001010200c40001007ae92c003000000001000116000200004000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200e4000100f0a31c00300000000100020600020000210000000d0000001100000000000866696c653001010200d200010039481c0030000000010000060002000027000000000000001400000000000866696c6531010102002e0001008f4e1c0030000000010000060002000028000000000000001500000000000866696c653201010200dd000100315b1c0030000000010000060002000028000000000000001600000000000866696c653301010200e7000100f79b2000300000000100000a000200003c000000000000001700000000000866696c652e636f6c6400"/352, 0x160, 0xa8000}, {&(0x7f00000113c0)="05010200c90001004b3404013c00000000000000040000000100000500000000000003000000000000000000a57c000001000000640000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001700000000000000000000006400000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6cff7273797a6b616c6c657273797a6b616c6c65727300"/284, 0x11c, 0xa9800}, {&(0x7f00000114e0)="0501020052000100beaba0004000000000000000040000000100000500000000000000040000000000000000a57c00000100000000000000000000000000000000000000000000000010e607090c0c00354c12560010e607090c0c00354c12560010e607090c0c00354c12560100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001000"/192, 0xc0, 0xaa000}, {&(0x7f00000115a0)="01000200a40001001aaef001e00700000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xfc000}, {&(0x7f0000000bc0)="0000000000000019004f53544121436f6d7072657373656420556e69636f646500000000000000000000000000000200000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c01000100206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c6900000000000000040500"/224, 0xe0, 0xfc0c0}, {&(0x7f00000007c0)="190000000000000000000000000000000000000900020002002a4f5354412055444620436f6d706c69616e740000000050010000000000000002000010000000000001000000000000005025f74000000001000000002a4c696e7578205544464653000000000000000000000004050000000000000000000000000000000000c0a19d095286d8962c9d3c49a1e6ab5fc1a748d4e37345d5b16d7b7740cc1a10cc570749d073ac380d464879a0c80c6c9e6b55ae44c566b9a7ce5a7f4580dcf46b0e74a9d79c031d4eb80d929765ef282d4e67a8ffbc846db8591b4eb0", 0xdd, 0xfc2c0}, {&(0x7f0000000980)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f0070000000000000000000000000000000000000500020005000100879cf001e20700000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xfc3a0}, {&(0x7f00000118c0)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xfc4a3}, {&(0x7f00000119c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xfc8e0}, {&(0x7f0000011a00)="08000200e80001000000f001e50700"/32, 0x20, 0xfca00}, {&(0x7f0000001100)="000002001800010021d42801f0070000002a5544462053706172696e67205461626c65000000000050010405000000002000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffff80020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff004000000000000000000000000000000008c58769b598272941536357f7851ad688bfec95b2f6d5a182b2d113cb5590d413bf2b9ca14ed8fd0e9125b4f6d385dfae4aa0678d4b43c08b96d53cf2120846ef58a6396af12e1243e1898651a13b600d049260b2adb3c3f4e5f64c4d1aed5e362426701", 0x1a4, 0xfe000}, {&(0x7f0000011b60)="020002002700010076b5f001ff070000002000006000000000200000e0070000", 0x20, 0xffe00}], 0x8000, &(0x7f0000001000)=ANY=[@ANYBLOB="756d61736b3d30303030303030303030301130303030303030303331342c616e63686f723d303030e1698e4cffb11aacac2c6221dc340c30303030303030303030303030323034372c73686f727461642c756e686964652c6769643d666f726765742c6c617374626c6f636b3d30303030303030303030303030303030303030372c66696c657365743d30303033303030303016c83030303033323736372c696f636861", @ANYRESDEC=0x0, @ANYBLOB=',noadinicb,\x00'], 0x1) sync() sync() creat(&(0x7f0000000040)='./bus\x00', 0x0) creat(&(0x7f0000000940)='./bus\x00', 0x20) sync() [ 729.371186][T21901] overlayfs: unrecognized mount option "lower£d|Š<Ø‹ le0" or missing value 04:31:44 executing program 1: syz_mount_image$ext4(&(0x7f0000000000)='ext3\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x17, &(0x7f0000000200)=[{&(0x7f0000011840)='\x00\x00', 0x2, 0x3}, {&(0x7f0000000540)=' \x00\x00', 0x3, 0x5}, {&(0x7f0000000140)='\x00\x00\x00\x00\x00\b\x00'/24, 0x18, 0x8}, {&(0x7f0000011860)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x20}, {&(0x7f0000000800)="200000000002000019000000900100000f000000000000000100000005000000000004ddff3f000020000000731f1f63731f1f630100ffff53ef010001000000721f1f635b8e281a0000000001000000000000000b0000000001000004000000000000002b0200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e393332393635373533000000000000f1da552c8028bc0500"/200, 0xc8, 0x400}, {&(0x7f0000000040)="000000000000000000000000bfd7fbde2cd74131b8ed5eef968344d001004000160000721f1f630000000011fc53fe991700000000000000000000000000000000c35269cf8f2a671042ff013d116f6efc93ca9a8b54b3", 0x57, 0x4e0}, {&(0x7f0000000400)="00000000000000000000000000000000000000000000000000000000200020000100000000000500400000000000000000000000000000004300000000000000", 0x40, 0x540}, {&(0x7f0000000580)="00000000000000000100000000000000000000000000ba000000000000000000bd43531db7b879f8d846c247e9737cd84ec87d3dc6b85ddf186130dbd3b3a913ffde7d82a1115ce7e3b3792203ea5aa5077b62c99a1f46a3dee2e4f3252f03cb6a280731c3cc7b1a1f3d713befe483c0538a1ed27cac4414257a87767a9eb6750a72d822478a42b549d54b6e787384ad0f36e4dfe9004482a0020ab7cc3b620cd21030b25d039a1298154a5f83a3784179a74bfa3b4751d819fc925bf023eff2b06205e2a7951344f2377880a1ae8312559430c6b1646b39910969ef6a847138ff4338888cc3759f61c3fc76685f0a8f63b1e45f6bad2b8eee32020559b06f5e38f9386e9169e41c7583febea5c13374d1224423ebbb7f7854b6dd8ea50154abe5cd0c6cdb052596ff1d6f967e23fb2158ca80480c2fe98258d54fa50c000000000000539230fd17e6bac57bdc53cdb2be", 0x151, 0x640}, {&(0x7f0000010160)="0500000003000000040000003d1fd6c49fc07094e4ca1270a419000f00030004", 0x20, 0x800}, {&(0x7f00000111a0)="ed41000000080000721f1f63731f1f63731f1f6300000000000004004000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x2100}, {&(0x7f00000111e0)="2000000004ed65de04ed65de00000000721f1f6300"/32, 0x20, 0x2183}, {&(0x7f0000000440)="8081000000601020721f1f09000000000000005763000000000000010040000000000000d5129c6e0bf1fb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000100000000000000000000000000000000000000000000000000000020000000000000000000000000000000721f1f630000000000001f00000000", 0xa7, 0x2600}, {&(0x7f00000112a0)="c0410000954ddfaf721f1f63721f0f63721f1f630000007bf10002004000000000000800000000000af301000400000000000000000000000700000020000000", 0x40, 0x2a00}, {&(0x7f0000011320)="ed410000d9aebd6c1d6ae032a358af34f5c0087a2809743b731f1f63731f1f630000000000000200000000000000001003000000020000000d0000001000050166696c65300000000e0000002800050766696c65310000000000000000000000000000000000000000000000000000006fc3a7c40000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040700"/192, 0xc0, 0x2b00}, {&(0x7f0000011480)="ffa1000026000000731f1f63731f1f63731f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3933323936353735332f66696c65302f66696c6530000000000000000000000000000000000000000000009d621b1c0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000", 0xa0, 0x2d00}, {&(0x7f0000000900)="ed81000064000000731f1f63731f1f63731f1f63000000000000010000000000000000100100000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c2872a1fd0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040734000000000028000000000000006461746100000000000000000000000000000000000000000000000000000000000000006c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572738f459ccd32a75d274cf00e94454abb30ab1a87c0e0880e0655a931b6dd21dffe54e4cc679115210adaa957fa0e1ecc2cc40a302e7bdd2e7a2ab8333334e92701bacc2d0570fee62aeecba803b62bae11370aa20e0dd6d2886255f0c6ea16c4f08c8022ddf6b44c52da27e9835a292ceb0b845f6fd19716f8bda9ad33905809b4fdd98df742b1fcbe8471666df5287de01a8e0ba240c155ccd6ff415c59c2cf4aa22013fa7f44b6aa32378ba7e61d63942e7f9a92a7fe302259d7fdc38edf2cc4affa745ad84461b951dedc0c2b72092a412b31124d8ef4a33464ce8f8a52f7760b768b28a3597b141b21b90ca59af905131e669e15578df797c034042ca2d4decaff82313ef830db4a5b9a759a41a596a1", 0x211, 0x3000}, {&(0x7f00000117c0)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c6533000000110000009407090166696c652e636f6c64000000", 0x80, 0x8000}, {&(0x7f00000118a0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x11800}, {&(0x7f00000118c0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x12000}, {&(0x7f00000001c0)="00000000000800000000000000000000000000000000000000000000000000009609fa720b14f5918d9ed8c0d23d910262df49375c63d727224cd86f2c8cc710", 0x40, 0x12800}, {&(0x7f00000000c0)="00000000000800f5c76edf2608f38ca97255a3495a00"/46, 0x2e, 0x13000}, {&(0x7f0000011920)="504d4d00504d4dff731f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d00000000000000000000000000000000000000000000000000006c6f6f7032310075782f746573742f73797a5f6d6f756e745f696d6167655f650500"/112, 0x70, 0x20000}, {&(0x7f0000002040)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000b6ca6b810358486c77e520ca5de40683779b42a74ab147756edd375dd121d13da0952339cefa13785bb2c0bacd154ae9824c8a86087373998169196169cb2b08455f47e12a239e50f7ffc836c7a28fa539a97027a07de105d240dd607a0e2b694ce476ce05aea1baeb6ae3132a678f324e9a2f09933022b462095731ebe57344f1", 0x4a1, 0x28000}], 0x0, &(0x7f0000002500)=ANY=[@ANYBLOB="00b30824400d21223433bba32035e2ef9711604edf71b82a8fe52765aad2d7836b1a3ba0706a2dbcd3adf3d38a57682198b853fa4e230125fe79a2c4a7e50ec75460bae8f5acee1959c9550f63773d76ea03ae36b4244835a3f5f544aed5577b0212798accf91ecde8621a9dc5cdfee2760508003ff361f94fc318010089b3532183ea8fc6be3f005afae337349b43c202d6c180a2eee27ed2ad99acc703246b4e35b433911d3cfdb6767dff8c0cc2f91ab6c42ebc2c5272197f36cb798833f97edcb11ddfa31834d602f22fe26d5b2094db8417389935f42d9213023fdd367aa1c38e70b68e44ebf44b3fd67798b083f989ae3a4c3cd6f55f339b9ff82bbc68ee3e549c5e63c09b85229f97849d8b093b9cf175f084f4d1a1097057d59d20eae608993156ff12bff4d9c3fa67cf0000ebf075f462f53b6ff908000000c3b95e3b508d50999603000000000000000515bf522ec94a08990c46311f75c2d6b452829b7dbcaf7745a0b7158d7db8120006583c495455301c782bec88a9684756bec6942209ba84329b882d2c9b9287710dbac1269e7c01474ddba5000000001419eca1f3c4ff0a8fb1de3b1bf8d2b875ff49f1efbee816d6635d4ce94f0c5344ebfd68092abecee6e19b4badd6467247c7fa1ab6b8325ba0960337d290545a71be6201d09e5f876468ab32f7c396cd097285139d6c5ee94af37dab2f1fdcdafb7e677f88fd1f41e368ee7dc6c40b1673bac55f5c3440a5bba5c0ebde02ec6a5f7b320841d0bf6b79393eb5195eb39fcde46b9b08cc5e2e3645de0a77603bbdd4011d67c691f4664eee5d25165ada9751678cf7d38c6309b5f457474e81258d68c076ab388761a6d036ead2a51511f5e8657e5038af1632dc7e1e9888d4651542e0e1df8b8314492554b2832f2d7b764d2d52ef2e2569caf83dc1e6c4", @ANYRESOCT, @ANYRES32=0x0], 0x1) [ 729.421416][T21904] loop4: detected capacity change from 0 to 8226 [ 729.519583][T21910] loop1: detected capacity change from 0 to 2048 [ 729.523977][T21904] ntfs3: loop4: Failed to load $MFTMirr. [ 729.575922][T21910] EXT4-fs (loop1): couldn't mount as ext3 due to feature incompatibilities 04:31:45 executing program 2: r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) r1 = openat$dma_heap(0xffffffffffffff9c, &(0x7f0000000180), 0x8000, 0x0) ioctl$VFAT_IOCTL_READDIR_SHORT(r1, 0x82307202, &(0x7f0000001280)=[{0x0, 0x0, 0x100}, {0x0, 0x0, 0x100}]) write$binfmt_script(r0, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) preadv(r0, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) mmap(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x1000005, 0x20010, r1, 0x1e204000) r2 = openat$fuse(0xffffffffffffff9c, &(0x7f0000000100), 0x2, 0x0) mount$fuseblk(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000001100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r2, @ANYBLOB="2c726f6f746d6f64653dda261d67303030303030303030303030303032303030302c757365725f69643db0882388ea927828265815da52b3625574f68dc1ded6b2558e2c1619228c53bae30d8839d4c8a7860d99f7eecbdd0643a47ffe98e6ceba18996cc34f7688cb6eb4a2297157eab029f0f4467e5f0476fff2e3ef3c5d3f727a2a12a6a4a4611cf6dae06cea5c9fdb5af3729e68df694a84ea963864398e676885f387a58968a5ae97013623cb3fc43d3b723dd5f3795ba1d673f0d2ae9b1d18a4c7ab3b98959111b9f2cb6b5bd3f3ae23260b4f4e346039c80b520a0f669ba2c398ff1103411f9de431590b8e6348d664f8add3be8dee", @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0, @ANYBLOB=',blksize=0x0000000000000800,default_permissions,\x00']) creat(&(0x7f0000000140)='./file0\x00', 0x42) write$binfmt_elf64(0xffffffffffffffff, &(0x7f0000001600)={{0x7f, 0x45, 0x4c, 0x46, 0x2, 0xff, 0x0, 0x3, 0x4, 0x0, 0x3b, 0x91, 0x2e5, 0x40, 0x1aa, 0x9, 0x2, 0x38, 0x1, 0xfffd, 0x8}, [{0x6474e551, 0xee4, 0x7, 0x7, 0x1f, 0x32, 0x9, 0x8000}, {0x6, 0x1, 0x7cf9, 0x6, 0xadeaa43, 0xfffffffffffffff8, 0x4, 0x7ff}], "86c6ff8835508151a804fc7f5793777d474e2c710cfc6895b8798c034cc35cc8", ['\x00']}, 0x1d0) ioctl$AUTOFS_DEV_IOCTL_PROTOSUBVER(r0, 0xc0189373, &(0x7f0000000040)=ANY=[@ANYBLOB="b619001e1a00000000000000", @ANYRES32=r2, @ANYBLOB='R\f\x00\x00\x00\x00\x00\x00./file0\x00']) syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x9e, &(0x7f0000000200)=[{&(0x7f0000010000)="e3d23c9b039b782d1ca42bc6942259c8c47b1983aaba360653ad225827edfbce89746747015a4233aa06a5fa2a3c1d7300e0fc7f0400000001000000000000005f42485266535f4d080000000000000000c0d30100000000004050010000000000000000000000000000000000000000000000080000000000700200000000000600000000000000010000000000000000100000004000000040000000100000810000000600000000000000000000000000000003000000000000004103000000000000030000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7300"/320, 0x140, 0x10000}, {&(0x7f0000010140)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x10220}, {&(0x7f0000010160)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf10000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100"/256, 0x100, 0x10320}, {&(0x7f0000010260)="00000000000000000000000080d001000000000500000000000000000050010000000005000000000000000000d1010000000005000000000000000040d00100000000050000000000000000c0d0010000000005000000000000000040d10100000000050000000000000000000008000000000040020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000006000000000000000000d0010000000006000000000000000040d0010000000005000000000000000040d2010000000006000000000000000040d1010000000005000000000000000000000800000000004002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000006000000000000000080d10100000000070000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d10100000000070000000000000000000008000000000070020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d301000000000800000000000000004050010000000006000000000000000000d40100000000080000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d101000000000700000000000000000000080000000000700200000000000100"/640, 0x280, 0x10b20}, {&(0x7f00000104e0)="d72b388dd422ae1fac6560756b4b1379b554c44947e20bb63f1b1e8557ba812689746747015a4233aa06a5fa2a3c1d7300001000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e00005000"/224, 0xe0, 0x100000}, {&(0x7f00000105c0)="000000000000000000000000000000008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040010000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7372e5c8faf606e4ef14fa4f1cf5601c5484ebc700ae75d79229b0974e6e51132389746747015a4233aa06a5fa2a3c1d7300401000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0400000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x260, 0x103ea0}, {&(0x7f0000010820)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d738f7d3efb3bbfedb558b8f0814f601e88b901c3c1fd646cd85c2cb4f7905c79aa89746747015a4233aa06a5fa2a3c1d7300801000000000000000000000000001cc69cdb062bc42f0920c728c071d181b0100000000000000030000000000000002000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e00005000"/736, 0x2e0, 0x107dc0}, {&(0x7f0000010b00)="00000000000000000000000000000000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73b16b662eceb14c47adde3f8c8af4e91569692a21fbb91d7dfb8c8c0cf9372b9989746747015a4233aa06a5fa2a3c1d7300c01000000000000000000000000001cc69cdb062bc42f0920c728c071d181b0100000000000000040000000000000001000000000100000000000000cc00001000000000006b3f0000300000000000", 0x140, 0x10bf40}, {&(0x7f0000010c40)="000000000000000000000000000000000300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181bce4cd9db6436bbae98b325acd8fd3daabf6e3c7a5036dae9a2fcab098e78086e89746747015a4233aa06a5fa2a3c1d7300001100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000500000000000000", 0xa0, 0x10ffc0}, {&(0x7f0000010ce0)="97395440394ce9c009849c6c2fe0c5481803d6f6e532863b9b04fff54e68cbb189746747015a4233aa06a5fa2a3c1d7300401100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000700000000000000", 0x60, 0x114000}, {&(0x7f0000010d40)="2a726df457f0a0f5311914c14a3b04f9778ec11794f4f7017f6eb48ed2096f2489746747015a4233aa06a5fa2a3c1d7300801100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000a0000000000000002000000000000100000000000c60000400000000000933f00000800000000c0110000000000c700403e0000000000933f00"/160, 0xa0, 0x118000}, {&(0x7f0000010de0)="000000000000000000000000000000000000000000000000010000000000000081c5d1afa9fed1e26c648e36c3cb79cc785eaade40e7af0fffc68d989b8faa6389746747015a4233aa06a5fa2a3c1d7300c01100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0200000000000000040000000000000002000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f00003000"/192, 0xc0, 0x11bfe0}, {&(0x7f0000010ea0)="0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181b3d96e1502f577b58aabcbaea90c68393731ef70d1654f76421ed1018549b922689746747015a4233aa06a5fa2a3c1d7300001200000000000100000000000001cc69cdb062bc42f0920c728c071d181b0200000000000000030000000000000003000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e00005000"/288, 0x120, 0x11ffa0}, {&(0x7f0000010fc0)="800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf1010000000000000000000008000000000000c0000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7366f0744699fbe2cf297aea7237298e3e0173270cfefe903849e4d8e43dbe5c1389746747015a4233aa06a5fa2a3c1d7300401200000000000100000000000001cc69cdb062bc42f0920c728c071d181b020000000000000002000000000000000b000000000000100000000000c00000400000000000833f0000180000000000110000000000a900000000000000006b3f0000180000000000110000000000b005000000000000006b3f0000000000000040110000000000a90000000000000000533f0000180000000040110000000000b00700000000000000533f00000000000000c0110000000000a90000000000000000323f0000210000000000120000000000a90000000000000000113f0000210000000040120000000000a90000000000000000f03e0000210000000080120000000000a90000000000000000cf3e0000210000000000500000000000a90000000000000000ae3e0000210000000000500000000000c00000800000000000963e0000180000000000500000000000c00000800000000000b73e0000180000000080110000000000b00a000000000000000b3f0000000000000000500000000000c00000800000000000f33e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/768, 0x300, 0x123f00}, {&(0x7f00000112c0)="000000000000000000000000000000000000000000000000000000004000000000000000010000000000000400000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00a00000000000000010000000000000002000000000000000200000000000000b00200000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000008001000000000000010000000000000200000000000000f749500bf5df461dad3c98ef56978e4521fec78a3477da98b35198e4ee9be62689746747015a4233aa06a5fa2a3c1d7300801200000000000100000000000001cc69cdb062bc42f0920c728c071d181b02000000000000000a0000000000000006000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000010000000000933f0000000000000080110000000000c70040000000000000933f00000000000000c0120000000000c700403d0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000040500000000000c700c07f00000000008b3f00"/544, 0x220, 0x127ee0}, {&(0x7f00000114e0)="0000000000000000000000000000000001000000000000000300000000000000", 0x20, 0x12bfe0}, {&(0x7f0000011500)="e86b8d8d44d14a01d586be716ebbfd9f1ac0444af8ad753c7d4b9d0bbab9355689746747015a4233aa06a5fa2a3c1d7300005000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0400000000000000040000000000000007000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f0000300000000100000000000000cc0000500100000000db3e0000300000000100000000000000cc0000d00100000000ab3e0000300000000100000000000000cc00005002000000007b3e0000300000000100000000000000cc00005004000000004b3e00003000"/288, 0x120, 0x500000}, {&(0x7f0000011620)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181be08256d420affc3481ca8485efe63ed23e75a6df11b279d140cc16b3ecdc81c989746747015a4233aa06a5fa2a3c1d7300405000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000040000000000000003000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f00003000"/544, 0x220, 0x503ea0}, {&(0x7f0000011840)="00000000000000000000000000000000030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181ba9042c04fd68f8d37e4ae7a42d619f28b19ee95a591836886b936c3f7b2cb31589746747015a4233aa06a5fa2a3c1d7300805000000000000100000000000001cc69cdb062bc42f0920c728c071d181b030000000000000002000000000000000b000000000000100000000000a900000000000000007a3f0000210000000000100000000000c00000400000000000623f0000180000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000c00000800000000000323f0000180000000040500000000000a90000000000000000113f0000210000000080500000000000a90000000000000000f03e00002100000000c0500000000000a90000000000000000cf3e0000210000000000510000000000a90000000000000000ae3e0000210000000040510000000000a900000000000000008d3e0000210000000000d00000000000c00000800000000000753e0000180000000000500000000000c000008000000000008d3e0000180000000000d00000000000c00000800000000000753e0000180000000000500000000000c00000800000000000f33e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/672, 0x2a0, 0x507f60}, {&(0x7f0000011ae0)="0000000000000000000000010000000000000100000000000000000000000000000000010000000000000100000000000000010000000000000003000000000000000200000000000000b00500000000000000010000000000000003000000000000000200000000000000b00100000000000000010000000000000003000000000000000200000000000000b00a00000000000000010000000000000003000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00400000000000000004001000000000000010000000000000400000000000000010000000000000001000000000000000200000000000000008000000000000000010000000000000200000000000000010000000000000003000000000000000200000000000000b003000000000000004c1f330c71d4186a8a7aaf6d5a57aa321b82349eb6a532779a4f4a3c937768d389746747015a4233aa06a5fa2a3c1d7300c05000000000000100000000000001cc69cdb062bc42f0920c728c071d181b03000000000000000a0000000000000008000000000000100000000000c60000400000000000933f0000080000000040100000000000c70000010000000000933f0000000000000080110000000000c700803e0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700400000000000008b3f0000000000000080510000000000c700807e00000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f00"/640, 0x280, 0x50bec0}, {&(0x7f0000011d60)="0000000000000000010000000000000002000000000000000200000000000000cff1c57417e24dd8b151c4e92342213593a3cdbdf91559aa14f95a0af9b8919d89746747015a4233aa06a5fa2a3c1d7300005100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000010000000000000009000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b70100000a0000000000000084000000000000000026360000b70100"/384, 0x180, 0x50ffe0}, {&(0x7f0000011ee0)="000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x513680}, {&(0x7f0000011f40)="00000000000000000000000300000000000000000000000000000000c050000000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000030000000000", 0x60, 0x513720}, {&(0x7f0000011fa0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x513840}, {&(0x7f0000011fe0)="00000100000000000000000000000000000000401100000000000000000000000000004000000000000000000000000000000000000000000000010000000000", 0x40, 0x5138e0}, {&(0x7f0000012020)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x5139e0}, {&(0x7f0000012140)="00000000000000000000030000000000000000010000000000000040510000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x513b60}, {&(0x7f00000121c0)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x513c00}, {&(0x7f0000012200)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x513c80}, {&(0x7f0000012260)="000000000000000000000000000000000000030000000000000000000000000000000040500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300"/128, 0x80, 0x513d20}, {&(0x7f00000122e0)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x513e40}, {&(0x7f0000012320)="000000000000000000030000000000000000000000000000000080500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000", 0x60, 0x513ee0}, {&(0x7f0000012380)="a38875d5be905146cbf324a050e09e164296f5b0d26b713ffd141049709fe70689746747015a4233aa06a5fa2a3c1d7300405100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x514000}, {&(0x7f0000012420)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000bc1f0be5307acce07bb7f515d200262d5cd10e839efb5b121790970203b022a389746747015a4233aa06a5fa2a3c1d7300805100000000000100000000000001cc69cdb062bc42f0920c728c071d181b040000000000000002000000000000000d000000000000100000000000c00000400000000000833f0000180000000040100000000000a90000000000000000623f0000210000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000a90000000000000000293f0000210000000000500000000000c00000800000000000113f0000180000000040510000000000a90000000000000000f03e0000210000000080510000000000a90000000000000000cf3e00002100000000c0510000000000a90000000000000000ae3e0000210000000000d00000000000c00000800000000000963e0000180000000000500100000000c000008000000000007e3e0000180000000000d00100000000a900000000000000005d3e0000210000000000d00100000000c00000000200000000453e0000180000000000d00100000000c00000000200000000453e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/704, 0x2c0, 0x517f40}, {&(0x7f00000126e0)="000000000000000000000000000000000000010000000000002400000000000000000000000000000000004000000000000000010000000000002400000000000000010000000000000004000000000000000200000000000000b00100000000000000000000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000010000000000000004000000000000000200000000000000b00a00000000000000010000000000000004000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00500000000000000000001000000000000010000000000000400000000000000010000000000000004000000000000000200000000000000b00400000000000000010000000000000001000000000000000200000000000000010000000000000004000000000000000200000000000000b003000000000000000080000000000000000100000000000002000000000000007d6a9f0ef4a5e5a3153df95598c4e19528767c509e021351fed84a75dd7ede7789746747015a4233aa06a5fa2a3c1d7300c05100000000000100000000000001cc69cdb062bc42f0920c728c071d181b04000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70040000000000000933f0000000000000080100000000000c700c0000000000000933f0000000000000080110000000000c700803e0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000040500000000000c700000100000000008b3f0000000000000000520000000000c700007e00000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700008000000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000040d00100000000c700c0ff0100000000733f00"/832, 0x340, 0x51be80}, {&(0x7f0000012a20)="00000000000000000000000000000000000000000000000001000000000000000100000000000000010000000000000002000000000000000300000000000000", 0x40, 0x51ffc0}, {&(0x7f0000012a60)="4f0cdd160281a75dd6a22956d0b92d0fe10996948e4821f5885797ed32b5bdf089746747015a4233aa06a5fa2a3c1d7300005001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1500000}, {&(0x7f0000012b60)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73fb9a36888a5159c0ca6ee9eb1a52369fe027e5e411818c1dc4ec56e56f9a59ef89746747015a4233aa06a5fa2a3c1d7300405001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1503dc0}, {&(0x7f0000012ea0)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73", 0x240, 0x1507dc0}, {&(0x7f00000130e0)="4f0cdd160281a75dd6a22956d0b92d0fe10996948e4821f5885797ed32b5bdf089746747015a4233aa06a5fa2a3c1d7300005001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1d00000}, {&(0x7f00000131e0)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73fb9a36888a5159c0ca6ee9eb1a52369fe027e5e411818c1dc4ec56e56f9a59ef89746747015a4233aa06a5fa2a3c1d7300405001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1d03dc0}, {&(0x7f0000013520)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73", 0x240, 0x1d07dc0}, {&(0x7f0000013760)="b8ea62be8f39d835299d4fdf38887eff45723fb2892e52c7f5e1be6ad171e37189746747015a4233aa06a5fa2a3c1d730000d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000002000000000000000c000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000040d00100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e00002100000000c0d10100000000a90000000000000000ae3e0000210000000000d20100000000a900000000000000008d3e0000210000000040d20100000000a900000000000000006c3e0000210000000080d20100000000a900000000000000004b3e00002100000000c0d20100000000a900000000000000002a3e0000210000000000d20100000000a900000000000000002a3e0000210000000000d20100000000a90000000000000000123e0000210000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/512, 0x200, 0x2500000}, {&(0x7f0000013960)="00000000000000000000000000000000000000000000000000000000000000010000000000000005000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00a00000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000005000000000000000200000000000000b00700000000000000010000000000000005000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000ab1c55044f8ab682d2363c61ebdcf0c870797cffee9b0ccf010741aff3716a1489746747015a4233aa06a5fa2a3c1d730040d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x2503e40}, {&(0x7f0000013bc0)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000e519fd80a33ac143f5c49ceef4d21b59fb8c17d234d43330d98ea81c76784c3789746747015a4233aa06a5fa2a3c1d730080d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007e3700003c0000000401000000000000010000000000000000de360000a000000004010000000000000c0001000000000000cf3600000f00000004010000000000001822a8f12600000000a03600002f000000040100000000000018d65ba13500000000713600002f00000004010000000000006c0000000000000000523600001f0000000501000000000000010000000000000000b2350000a000000005010000000000000c0001000000000000943500001e0000000601000000000000010000000000000000f4340000a000000006010000000000000c0001000000000000e13400001300000006010000000000006c0000000000000000683400007900"/992, 0x3e0, 0x2507f40}, {&(0x7f0000013fa0)="0000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0404010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000ee58cbab52ffe21f9d7e1e2f4aa7e524b8d3b8d1073d0e8dec5698b16fd0ec0889746747015a4233aa06a5fa2a3c1d7300c0d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000853600003c0000000401000000000000010000000000000000e5350000a000000004010000000000000c0001000000000000d63500000f00000004010000000000001822a8f12600000000a73500002f000000040100000000000018d65ba13500000000783500002f00000004010000000000006c0000000000000000593500001f0000000501000000000000010000000000000000b9340000a000000005010000000000000c00010000000000009b3400001e00000005010000000000006c000000000000000066340000350000000601000000000000010000000000000000c6330000a000000006010000000000000c0001000000000000b33300001300000006010000000000006c00000000000000003a3300007900"/3872, 0xf20, 0x250b4c0}, {&(0x7f0000014ec0)="0000000000000000000000000000000000000000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531070000000000000007000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000270000000000000027000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530070000000000000007000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c653003010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0406010000000000000100000000000000000700000000000000000009000166696c652e636f6c6405010000000000000100000000000000000700000000000000000005000166696c653305010000000000000100000000000000000700000000000000000005000166696c653204010000000000000100000000000000000700000000000000000005000166696c653101010000000000000100000000000000000700000000000000000005000266696c653004010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e030000000000000007000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000681f1f63000000005011fe04681f1f63000000005011fe04661f1f630000000000000000900456bc2bf1c67d22495a2f8f4581f1c1f7191d861a76cb6d77f74723258a0089746747015a4233aa06a5fa2a3c1d730000d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xd00, 0x250f380}, {&(0x7f0000015bc0)="686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5fa99b5d8dd7fea43a24642add984362c9d443e7c2260574d9de3d22c31bf90d3d89746747015a4233aa06a5fa2a3c1d730040d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b05000000000000000700000000000000", 0xc0, 0x2513fa0}, {&(0x7f0000015c80)="9830068bc7c407fb444de0d227963c690dc38b702df9bdcc06c4c4fa57d3c6e789746747015a4233aa06a5fa2a3c1d730080d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e0000210000000080d10100000000a900000000000000009a3e00002100000000c0d10100000000a90000000000000000793e0000210000000000d20100000000a90000000000000000583e0000210000000000d30100000000a90000000000000000373e0000210000000040d30100000000a90000000000000000163e0000210000000080d30100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x2518000}, {&(0x7f0000015e40)="0000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00a00000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000022082eef38f5258d79683ce27a579af5c269ea0de4cbe5d05076213b1f669c7e89746747015a4233aa06a5fa2a3c1d7300c0d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x251be40}, {&(0x7f00000160a0)="0000000000000000000000000000000000000000000000000000000002002e2e05000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f6300000000000000000000000000000000000000003cc8943d3e025f7a538ccfec80d308d1758ac8d7b8744c698f90d5fc058ed4a689746747015a4233aa06a5fa2a3c1d730000d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b050000000000000009000000000000000100000000d743525573ac41effb85e6fd1243b886e6933f0000080000000000", 0x140, 0x251ff40}, {&(0x7f00000161e0)="0000000000000000000000000000000000000000000000000500000000000000e0d48d4137ad71b93153a5c7dca00968e4547ae0daa76742c84706680f5a23ce89746747015a4233aa06a5fa2a3c1d730040d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/320, 0x140, 0x2523fe0}, {&(0x7f0000016320)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b3a618ec787b41985f939fcbd3e2a3feaa55f0a49b990e32bda8d4b700ee2b20289746747015a4233aa06a5fa2a3c1d730080d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b06000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000080d00100000000c700c0000000000000733f0000000000000080d10100000000c70040000000000000733f0000000000000000d30100000000c70000fd0100000000733f00"/800, 0x320, 0x2527ea0}, {&(0x7f0000016640)="00000000000000000000000000000000000000000000000003000000000000000200000000000000010000000000000001000000000000000100000000000000ea02ec9122398e4fec4ee69336bce20678181edf74f1a3fccb94e5896222334989746747015a4233aa06a5fa2a3c1d7300c0d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x252bfc0}, {&(0x7f0000016800)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x252f3a0}, {&(0x7f0000016880)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252f4c0}, {&(0x7f00000168e0)="0000000000000000000000000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252f560}, {&(0x7f0000016960)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x252f720}, {&(0x7f00000169c0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x252f840}, {&(0x7f0000016a00)="0000050000000000000000000000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/96, 0x60, 0x252f8e0}, {&(0x7f0000016a60)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x252f9e0}, {&(0x7f0000016b80)="00000000000000000000050000000000000000010000000000000040d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x252fb60}, {&(0x7f0000016c00)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x252fc00}, {&(0x7f0000016c40)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252fc80}, {&(0x7f0000016ca0)="000000000000000000000000000000000000060000000000000000000000000000000040d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252fd20}, {&(0x7f0000016d20)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x252fe40}, {&(0x7f0000016d60)="000000000000000000060000000000000000000000000000000000d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x252fee0}, {&(0x7f0000016dc0)="afafb14245be42af7264177acc341544c9beafc5000a1f5390c76ebd842a527189746747015a4233aa06a5fa2a3c1d730000d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b07000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70040000000000000733f0000000000000040d20100000000c700c0000000000000733f00000000000000c0d30100000000c70040fc0100000000733f000000", 0x1c0, 0x2530000}, {&(0x7f0000016f80)="0000000000000000000000000000000000000000000000000400000000000000020000000000000001000000000000000100000000000000010000000000000055747e6bc109e73765fd8e28f5b8907767f05ab539122092149c8a5109bd605e89746747015a4233aa06a5fa2a3c1d730040d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x2533fc0}, {&(0x7f0000017140)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x25373a0}, {&(0x7f00000171c0)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x25374c0}, {&(0x7f0000017220)="0000000000000000000000000000000000000000070000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x2537560}, {&(0x7f00000172a0)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x2537720}, {&(0x7f0000017300)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x2537840}, {&(0x7f0000017340)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x25378e0}, {&(0x7f00000173a0)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x25379e0}, {&(0x7f00000174e0)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x2537b60}, {&(0x7f00000175c0)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x2537c80}, {&(0x7f0000017620)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x2537d20}, {&(0x7f00000176a0)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x2537e40}, {&(0x7f00000176e0)="000000000000000000070000000000000000000000000000000080d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x2537ee0}, {&(0x7f0000017740)="05ea6b8aacc975cadcf1604ca7d007b138efd5936ab5965ad11b90d4b130464d89746747015a4233aa06a5fa2a3c1d730080d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x2538000}, {&(0x7f0000017840)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b000000000000000000000000000000000000000000000000000000000000000000000000000000009ac0aaf8165d4e3f003ab2a5afc8457b451cf57e81c96d7bd99a90808bd2c23b89746747015a4233aa06a5fa2a3c1d7300c0d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/672, 0x2a0, 0x253bee0}, {&(0x7f0000017ae0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x253f3a0}, {&(0x7f0000017b60)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x253f4c0}, {&(0x7f0000017bc0)="0000000000000000000000000000000000000000080000000000000000000000000000000040d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800"/128, 0x80, 0x253f560}, {&(0x7f0000017c40)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x253f720}, {&(0x7f0000017ca0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x253f840}, {&(0x7f0000017ce0)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x253f8e0}, {&(0x7f0000017d40)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x253f9e0}, {&(0x7f0000017e80)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x253fb60}, {&(0x7f0000017f60)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x253fc80}, {&(0x7f0000017fc0)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x253fd20}, {&(0x7f0000018040)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x253fe40}, {&(0x7f0000018080)="000000000000000000080000000000000000000000000000000000d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800000000000000", 0x60, 0x253fee0}, {&(0x7f00000180e0)="1e501bc81c61e7572837cacd4469b7133fe08ac28ca12b2332186229bfb93dd089746747015a4233aa06a5fa2a3c1d730000d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e00002100000000c0d10100000000a900000000000000009a3e0000210000000000d20100000000a90000000000000000793e0000210000000080d30100000000a90000000000000000583e00002100000000c0d30100000000a90000000000000000373e0000210000000000d40100000000a90000000000000000163e0000210000000040d40100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x2540000}, {&(0x7f00000182a0)="0000000000000000000000000000000000000000000000000000010000000000000008000000000000000200000000000000b00a00000000000000010000000000000008000000000000000200000000000000b00200000000000000010000000000000008000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000c44f7f10463c8b2b2c62dd163cdbb0fa304ae64d3251a27db4e3b16478c4f47089746747015a4233aa06a5fa2a3c1d730040d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b08000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70080000000000000733f0000000000000040d20100000000c70040010000000000733f0000000000000080d40100000000c70080fb0100000000733f000000", 0x380, 0x2543e40}, {&(0x7f0000018620)="00000000000000000000000000000000000000000000000004000000000000000200000000000000010000000000000001000000000000000100000000000000", 0x40, 0x2547fc0}, {&(0x7f0000018660)="66430b1f4a39ee8b3021ad29f69d28ee4c0f9ccd09472a0632d42746f13699d589746747015a4233aa06a5fa2a3c1d73000000040000000001000000000000005f42485266535f4d080000000000000000c0d30100000000004050010000000000000000000000000000000000000000000000080000000000700200000000000600000000000000010000000000000000100000004000000040000000100000810000000600000000000000000000000000000003000000000000004103000000000000030000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7300"/320, 0x140, 0x4000000}, {&(0x7f00000187a0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x4000220}, {&(0x7f00000187c0)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf10000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100"/256, 0x100, 0x4000320}, {&(0x7f00000188c0)="00000000000000000000000080d001000000000500000000000000000050010000000005000000000000000000d1010000000005000000000000000040d00100000000050000000000000000c0d0010000000005000000000000000040d10100000000050000000000000000000008000000000040020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000006000000000000000000d0010000000006000000000000000040d0010000000005000000000000000040d2010000000006000000000000000040d1010000000005000000000000000000000800000000004002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000006000000000000000080d10100000000070000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d10100000000070000000000000000000008000000000070020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d301000000000800000000000000004050010000000006000000000000000000d40100000000080000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d101000000000700000000000000000000080000000000700200000000000100"/640, 0x280, 0x4000b20}, {&(0x7f0000018b40)="b8ea62be8f39d835299d4fdf38887eff45723fb2892e52c7f5e1be6ad171e37189746747015a4233aa06a5fa2a3c1d730000d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000002000000000000000c000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000040d00100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e00002100000000c0d10100000000a90000000000000000ae3e0000210000000000d20100000000a900000000000000008d3e0000210000000040d20100000000a900000000000000006c3e0000210000000080d20100000000a900000000000000004b3e00002100000000c0d20100000000a900000000000000002a3e0000210000000000d20100000000a900000000000000002a3e0000210000000000d20100000000a90000000000000000123e0000210000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/512, 0x200, 0x4500000}, {&(0x7f0000018d40)="00000000000000000000000000000000000000000000000000000000000000010000000000000005000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00a00000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000005000000000000000200000000000000b00700000000000000010000000000000005000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000ab1c55044f8ab682d2363c61ebdcf0c870797cffee9b0ccf010741aff3716a1489746747015a4233aa06a5fa2a3c1d730040d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x4503e40}, {&(0x7f0000018fa0)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000e519fd80a33ac143f5c49ceef4d21b59fb8c17d234d43330d98ea81c76784c3789746747015a4233aa06a5fa2a3c1d730080d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007e3700003c0000000401000000000000010000000000000000de360000a000000004010000000000000c0001000000000000cf3600000f00000004010000000000001822a8f12600000000a03600002f000000040100000000000018d65ba13500000000713600002f00000004010000000000006c0000000000000000523600001f0000000501000000000000010000000000000000b2350000a000000005010000000000000c0001000000000000943500001e0000000601000000000000010000000000000000f4340000a000000006010000000000000c0001000000000000e13400001300000006010000000000006c0000000000000000683400007900"/992, 0x3e0, 0x4507f40}, {&(0x7f0000019380)="0000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0404010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000ee58cbab52ffe21f9d7e1e2f4aa7e524b8d3b8d1073d0e8dec5698b16fd0ec0889746747015a4233aa06a5fa2a3c1d7300c0d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000853600003c0000000401000000000000010000000000000000e5350000a000000004010000000000000c0001000000000000d63500000f00000004010000000000001822a8f12600000000a73500002f000000040100000000000018d65ba13500000000783500002f00000004010000000000006c0000000000000000593500001f0000000501000000000000010000000000000000b9340000a000000005010000000000000c00010000000000009b3400001e00000005010000000000006c000000000000000066340000350000000601000000000000010000000000000000c6330000a000000006010000000000000c0001000000000000b33300001300000006010000000000006c00000000000000003a3300007900"/3872, 0xf20, 0x450b4c0}, {&(0x7f000001a2a0)="0000000000000000000000000000000000000000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531070000000000000007000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000270000000000000027000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530070000000000000007000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c653003010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0406010000000000000100000000000000000700000000000000000009000166696c652e636f6c6405010000000000000100000000000000000700000000000000000005000166696c653305010000000000000100000000000000000700000000000000000005000166696c653204010000000000000100000000000000000700000000000000000005000166696c653101010000000000000100000000000000000700000000000000000005000266696c653004010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e030000000000000007000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000681f1f63000000005011fe04681f1f63000000005011fe04661f1f630000000000000000900456bc2bf1c67d22495a2f8f4581f1c1f7191d861a76cb6d77f74723258a0089746747015a4233aa06a5fa2a3c1d730000d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xd00, 0x450f380}, {&(0x7f000001afa0)="686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5fa99b5d8dd7fea43a24642add984362c9d443e7c2260574d9de3d22c31bf90d3d89746747015a4233aa06a5fa2a3c1d730040d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b05000000000000000700000000000000", 0xc0, 0x4513fa0}, {&(0x7f000001b060)="9830068bc7c407fb444de0d227963c690dc38b702df9bdcc06c4c4fa57d3c6e789746747015a4233aa06a5fa2a3c1d730080d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e0000210000000080d10100000000a900000000000000009a3e00002100000000c0d10100000000a90000000000000000793e0000210000000000d20100000000a90000000000000000583e0000210000000000d30100000000a90000000000000000373e0000210000000040d30100000000a90000000000000000163e0000210000000080d30100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x4518000}, {&(0x7f000001b220)="0000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00a00000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000022082eef38f5258d79683ce27a579af5c269ea0de4cbe5d05076213b1f669c7e89746747015a4233aa06a5fa2a3c1d7300c0d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x451be40}, {&(0x7f000001b480)="0000000000000000000000000000000000000000000000000000000002002e2e05000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f6300000000000000000000000000000000000000003cc8943d3e025f7a538ccfec80d308d1758ac8d7b8744c698f90d5fc058ed4a689746747015a4233aa06a5fa2a3c1d730000d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b050000000000000009000000000000000100000000d743525573ac41effb85e6fd1243b886e6933f0000080000000000", 0x140, 0x451ff40}, {&(0x7f000001b5c0)="0000000000000000000000000000000000000000000000000500000000000000e0d48d4137ad71b93153a5c7dca00968e4547ae0daa76742c84706680f5a23ce89746747015a4233aa06a5fa2a3c1d730040d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/320, 0x140, 0x4523fe0}, {&(0x7f000001b700)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b3a618ec787b41985f939fcbd3e2a3feaa55f0a49b990e32bda8d4b700ee2b20289746747015a4233aa06a5fa2a3c1d730080d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b06000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000080d00100000000c700c0000000000000733f0000000000000080d10100000000c70040000000000000733f0000000000000000d30100000000c70000fd0100000000733f00"/800, 0x320, 0x4527ea0}, {&(0x7f000001ba20)="00000000000000000000000000000000000000000000000003000000000000000200000000000000010000000000000001000000000000000100000000000000ea02ec9122398e4fec4ee69336bce20678181edf74f1a3fccb94e5896222334989746747015a4233aa06a5fa2a3c1d7300c0d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x452bfc0}, {&(0x7f000001bbe0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x452f3a0}, {&(0x7f000001bc60)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452f4c0}, {&(0x7f000001bcc0)="0000000000000000000000000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452f560}, {&(0x7f000001bd40)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x452f720}, {&(0x7f000001bda0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x452f840}, {&(0x7f000001bde0)="0000050000000000000000000000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/96, 0x60, 0x452f8e0}, {&(0x7f000001be40)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x452f9e0}, {&(0x7f000001bf60)="00000000000000000000050000000000000000010000000000000040d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x452fb60}, {&(0x7f000001bfe0)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x452fc00}, {&(0x7f000001c020)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452fc80}, {&(0x7f000001c080)="000000000000000000000000000000000000060000000000000000000000000000000040d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452fd20}, {&(0x7f000001c100)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x452fe40}, {&(0x7f000001c140)="000000000000000000060000000000000000000000000000000000d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x452fee0}, {&(0x7f000001c1a0)="afafb14245be42af7264177acc341544c9beafc5000a1f5390c76ebd842a527189746747015a4233aa06a5fa2a3c1d730000d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b07000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70040000000000000733f0000000000000040d20100000000c700c0000000000000733f00000000000000c0d30100000000c70040fc0100000000733f000000", 0x1c0, 0x4530000}, {&(0x7f000001c360)="0000000000000000000000000000000000000000000000000400000000000000020000000000000001000000000000000100000000000000010000000000000055747e6bc109e73765fd8e28f5b8907767f05ab539122092149c8a5109bd605e89746747015a4233aa06a5fa2a3c1d730040d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x4533fc0}, {&(0x7f000001c520)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x45373a0}, {&(0x7f000001c5a0)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x45374c0}, {&(0x7f000001c600)="0000000000000000000000000000000000000000070000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x4537560}, {&(0x7f000001c680)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x4537720}, {&(0x7f000001c6e0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x4537840}, {&(0x7f000001c720)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x45378e0}, {&(0x7f000001c780)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x45379e0}, {&(0x7f000001c8c0)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x4537b60}, {&(0x7f000001c9a0)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x4537c80}, {&(0x7f000001ca00)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x4537d20}, {&(0x7f000001ca80)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x4537e40}, {&(0x7f000001cac0)="000000000000000000070000000000000000000000000000000080d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x4537ee0}, {&(0x7f000001cb20)="05ea6b8aacc975cadcf1604ca7d007b138efd5936ab5965ad11b90d4b130464d89746747015a4233aa06a5fa2a3c1d730080d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x4538000}, {&(0x7f000001cc20)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b000000000000000000000000000000000000000000000000000000000000000000000000000000009ac0aaf8165d4e3f003ab2a5afc8457b451cf57e81c96d7bd99a90808bd2c23b89746747015a4233aa06a5fa2a3c1d7300c0d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/672, 0x2a0, 0x453bee0}, {&(0x7f000001cec0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x453f3a0}, {&(0x7f000001cf40)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x453f4c0}, {&(0x7f000001cfa0)="0000000000000000000000000000000000000000080000000000000000000000000000000040d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800"/128, 0x80, 0x453f560}, {&(0x7f000001d020)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x453f720}, {&(0x7f000001d080)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x453f840}, {&(0x7f000001d0c0)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x453f8e0}, {&(0x7f000001d120)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x453f9e0}, {&(0x7f000001d260)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x453fb60}, {&(0x7f000001d340)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x453fc80}, {&(0x7f000001d3a0)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x453fd20}, {&(0x7f000001d420)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x453fe40}, {&(0x7f000001d460)="000000000000000000080000000000000000000000000000000000d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800000000000000", 0x60, 0x453fee0}, {&(0x7f000001d4c0)="1e501bc81c61e7572837cacd4469b7133fe08ac28ca12b2332186229bfb93dd089746747015a4233aa06a5fa2a3c1d730000d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e00002100000000c0d10100000000a900000000000000009a3e0000210000000000d20100000000a90000000000000000793e0000210000000080d30100000000a90000000000000000583e00002100000000c0d30100000000a90000000000000000373e0000210000000000d40100000000a90000000000000000163e0000210000000040d40100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x4540000}, {&(0x7f000001d680)="0000000000000000000000000000000000000000000000000000010000000000000008000000000000000200000000000000b00a00000000000000010000000000000008000000000000000200000000000000b00200000000000000010000000000000008000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000c44f7f10463c8b2b2c62dd163cdbb0fa304ae64d3251a27db4e3b16478c4f47089746747015a4233aa06a5fa2a3c1d730040d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b08000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70080000000000000733f0000000000000040d20100000000c70040010000000000733f0000000000000080d40100000000c70080fb0100000000733f000000", 0x380, 0x4543e40}, {&(0x7f000001da00)="00000000000000000000000000000000000000000000000004000000000000000200000000000000010000000000000001000000000000000100000000000000", 0x40, 0x4547fc0}], 0x0, &(0x7f000001da40), 0x1) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) (async) openat$dma_heap(0xffffffffffffff9c, &(0x7f0000000180), 0x8000, 0x0) (async) ioctl$VFAT_IOCTL_READDIR_SHORT(r1, 0x82307202, &(0x7f0000001280)=[{0x0, 0x0, 0x100}, {0x0, 0x0, 0x100}]) (async) write$binfmt_script(r0, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) (async) preadv(r0, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) (async) mmap(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x1000005, 0x20010, r1, 0x1e204000) (async) openat$fuse(0xffffffffffffff9c, &(0x7f0000000100), 0x2, 0x0) (async) mount$fuseblk(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000001100)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r2, @ANYBLOB="2c726f6f746d6f64653dda261d67303030303030303030303030303032303030302c757365725f69643db0882388ea927828265815da52b3625574f68dc1ded6b2558e2c1619228c53bae30d8839d4c8a7860d99f7eecbdd0643a47ffe98e6ceba18996cc34f7688cb6eb4a2297157eab029f0f4467e5f0476fff2e3ef3c5d3f727a2a12a6a4a4611cf6dae06cea5c9fdb5af3729e68df694a84ea963864398e676885f387a58968a5ae97013623cb3fc43d3b723dd5f3795ba1d673f0d2ae9b1d18a4c7ab3b98959111b9f2cb6b5bd3f3ae23260b4f4e346039c80b520a0f669ba2c398ff1103411f9de431590b8e6348d664f8add3be8dee", @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0, @ANYBLOB=',blksize=0x0000000000000800,default_permissions,\x00']) (async) creat(&(0x7f0000000140)='./file0\x00', 0x42) (async) write$binfmt_elf64(0xffffffffffffffff, &(0x7f0000001600)={{0x7f, 0x45, 0x4c, 0x46, 0x2, 0xff, 0x0, 0x3, 0x4, 0x0, 0x3b, 0x91, 0x2e5, 0x40, 0x1aa, 0x9, 0x2, 0x38, 0x1, 0xfffd, 0x8}, [{0x6474e551, 0xee4, 0x7, 0x7, 0x1f, 0x32, 0x9, 0x8000}, {0x6, 0x1, 0x7cf9, 0x6, 0xadeaa43, 0xfffffffffffffff8, 0x4, 0x7ff}], "86c6ff8835508151a804fc7f5793777d474e2c710cfc6895b8798c034cc35cc8", ['\x00']}, 0x1d0) (async) ioctl$AUTOFS_DEV_IOCTL_PROTOSUBVER(r0, 0xc0189373, &(0x7f0000000040)=ANY=[@ANYBLOB="b619001e1a00000000000000", @ANYRES32=r2, @ANYBLOB='R\f\x00\x00\x00\x00\x00\x00./file0\x00']) (async) syz_mount_image$btrfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x8000000, 0x9e, &(0x7f0000000200)=[{&(0x7f0000010000)="e3d23c9b039b782d1ca42bc6942259c8c47b1983aaba360653ad225827edfbce89746747015a4233aa06a5fa2a3c1d7300e0fc7f0400000001000000000000005f42485266535f4d080000000000000000c0d30100000000004050010000000000000000000000000000000000000000000000080000000000700200000000000600000000000000010000000000000000100000004000000040000000100000810000000600000000000000000000000000000003000000000000004103000000000000030000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7300"/320, 0x140, 0x10000}, {&(0x7f0000010140)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x10220}, {&(0x7f0000010160)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf10000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100"/256, 0x100, 0x10320}, {&(0x7f0000010260)="00000000000000000000000080d001000000000500000000000000000050010000000005000000000000000000d1010000000005000000000000000040d00100000000050000000000000000c0d0010000000005000000000000000040d10100000000050000000000000000000008000000000040020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000006000000000000000000d0010000000006000000000000000040d0010000000005000000000000000040d2010000000006000000000000000040d1010000000005000000000000000000000800000000004002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000006000000000000000080d10100000000070000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d10100000000070000000000000000000008000000000070020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d301000000000800000000000000004050010000000006000000000000000000d40100000000080000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d101000000000700000000000000000000080000000000700200000000000100"/640, 0x280, 0x10b20}, {&(0x7f00000104e0)="d72b388dd422ae1fac6560756b4b1379b554c44947e20bb63f1b1e8557ba812689746747015a4233aa06a5fa2a3c1d7300001000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e00005000"/224, 0xe0, 0x100000}, {&(0x7f00000105c0)="000000000000000000000000000000008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040010000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7372e5c8faf606e4ef14fa4f1cf5601c5484ebc700ae75d79229b0974e6e51132389746747015a4233aa06a5fa2a3c1d7300401000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0400000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x260, 0x103ea0}, {&(0x7f0000010820)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d738f7d3efb3bbfedb558b8f0814f601e88b901c3c1fd646cd85c2cb4f7905c79aa89746747015a4233aa06a5fa2a3c1d7300801000000000000000000000000001cc69cdb062bc42f0920c728c071d181b0100000000000000030000000000000002000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e00005000"/736, 0x2e0, 0x107dc0}, {&(0x7f0000010b00)="00000000000000000000000000000000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73b16b662eceb14c47adde3f8c8af4e91569692a21fbb91d7dfb8c8c0cf9372b9989746747015a4233aa06a5fa2a3c1d7300c01000000000000000000000000001cc69cdb062bc42f0920c728c071d181b0100000000000000040000000000000001000000000100000000000000cc00001000000000006b3f0000300000000000", 0x140, 0x10bf40}, {&(0x7f0000010c40)="000000000000000000000000000000000300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181bce4cd9db6436bbae98b325acd8fd3daabf6e3c7a5036dae9a2fcab098e78086e89746747015a4233aa06a5fa2a3c1d7300001100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000500000000000000", 0xa0, 0x10ffc0}, {&(0x7f0000010ce0)="97395440394ce9c009849c6c2fe0c5481803d6f6e532863b9b04fff54e68cbb189746747015a4233aa06a5fa2a3c1d7300401100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000700000000000000", 0x60, 0x114000}, {&(0x7f0000010d40)="2a726df457f0a0f5311914c14a3b04f9778ec11794f4f7017f6eb48ed2096f2489746747015a4233aa06a5fa2a3c1d7300801100000000000000000000000001cc69cdb062bc42f0920c728c071d181b01000000000000000a0000000000000002000000000000100000000000c60000400000000000933f00000800000000c0110000000000c700403e0000000000933f00"/160, 0xa0, 0x118000}, {&(0x7f0000010de0)="000000000000000000000000000000000000000000000000010000000000000081c5d1afa9fed1e26c648e36c3cb79cc785eaade40e7af0fffc68d989b8faa6389746747015a4233aa06a5fa2a3c1d7300c01100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0200000000000000040000000000000002000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f00003000"/192, 0xc0, 0x11bfe0}, {&(0x7f0000010ea0)="0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181b3d96e1502f577b58aabcbaea90c68393731ef70d1654f76421ed1018549b922689746747015a4233aa06a5fa2a3c1d7300001200000000000100000000000001cc69cdb062bc42f0920c728c071d181b0200000000000000030000000000000003000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e00005000"/288, 0x120, 0x11ffa0}, {&(0x7f0000010fc0)="800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf1010000000000000000000008000000000000c0000000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7366f0744699fbe2cf297aea7237298e3e0173270cfefe903849e4d8e43dbe5c1389746747015a4233aa06a5fa2a3c1d7300401200000000000100000000000001cc69cdb062bc42f0920c728c071d181b020000000000000002000000000000000b000000000000100000000000c00000400000000000833f0000180000000000110000000000a900000000000000006b3f0000180000000000110000000000b005000000000000006b3f0000000000000040110000000000a90000000000000000533f0000180000000040110000000000b00700000000000000533f00000000000000c0110000000000a90000000000000000323f0000210000000000120000000000a90000000000000000113f0000210000000040120000000000a90000000000000000f03e0000210000000080120000000000a90000000000000000cf3e0000210000000000500000000000a90000000000000000ae3e0000210000000000500000000000c00000800000000000963e0000180000000000500000000000c00000800000000000b73e0000180000000080110000000000b00a000000000000000b3f0000000000000000500000000000c00000800000000000f33e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/768, 0x300, 0x123f00}, {&(0x7f00000112c0)="000000000000000000000000000000000000000000000000000000004000000000000000010000000000000400000000000000010000000000000002000000000000000200000000000000b00100000000000000010000000000000002000000000000000200000000000000b00a00000000000000010000000000000002000000000000000200000000000000b00200000000000000010000000000000002000000000000000200000000000000b00300000000000000010000000000000002000000000000000200000000000000b00400000000000000010000000000000001000000000000000200000000000000010000000000000001000000000000000200000000000000008001000000000000010000000000000200000000000000f749500bf5df461dad3c98ef56978e4521fec78a3477da98b35198e4ee9be62689746747015a4233aa06a5fa2a3c1d7300801200000000000100000000000001cc69cdb062bc42f0920c728c071d181b02000000000000000a0000000000000006000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000010000000000933f0000000000000080110000000000c70040000000000000933f00000000000000c0120000000000c700403d0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000040500000000000c700c07f00000000008b3f00"/544, 0x220, 0x127ee0}, {&(0x7f00000114e0)="0000000000000000000000000000000001000000000000000300000000000000", 0x20, 0x12bfe0}, {&(0x7f0000011500)="e86b8d8d44d14a01d586be716ebbfd9f1ac0444af8ad753c7d4b9d0bbab9355689746747015a4233aa06a5fa2a3c1d7300005000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0400000000000000040000000000000007000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f0000300000000100000000000000cc0000500100000000db3e0000300000000100000000000000cc0000d00100000000ab3e0000300000000100000000000000cc00005002000000007b3e0000300000000100000000000000cc00005004000000004b3e00003000"/288, 0x120, 0x500000}, {&(0x7f0000011620)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181be08256d420affc3481ca8485efe63ed23e75a6df11b279d140cc16b3ecdc81c989746747015a4233aa06a5fa2a3c1d7300405000000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000040000000000000003000000000100000000000000cc00001000000000006b3f0000300000000100000000000000cc00005000000000003b3f0000300000000100000000000000cc0000d000000000000b3f00003000"/544, 0x220, 0x503ea0}, {&(0x7f0000011840)="00000000000000000000000000000000030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005000000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000001000000000000000400000000000cc69cdb062bc42f0920c728c071d181ba9042c04fd68f8d37e4ae7a42d619f28b19ee95a591836886b936c3f7b2cb31589746747015a4233aa06a5fa2a3c1d7300805000000000000100000000000001cc69cdb062bc42f0920c728c071d181b030000000000000002000000000000000b000000000000100000000000a900000000000000007a3f0000210000000000100000000000c00000400000000000623f0000180000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000c00000800000000000323f0000180000000040500000000000a90000000000000000113f0000210000000080500000000000a90000000000000000f03e00002100000000c0500000000000a90000000000000000cf3e0000210000000000510000000000a90000000000000000ae3e0000210000000040510000000000a900000000000000008d3e0000210000000000d00000000000c00000800000000000753e0000180000000000500000000000c000008000000000008d3e0000180000000000d00000000000c00000800000000000753e0000180000000000500000000000c00000800000000000f33e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/672, 0x2a0, 0x507f60}, {&(0x7f0000011ae0)="0000000000000000000000010000000000000100000000000000000000000000000000010000000000000100000000000000010000000000000003000000000000000200000000000000b00500000000000000010000000000000003000000000000000200000000000000b00100000000000000010000000000000003000000000000000200000000000000b00a00000000000000010000000000000003000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00400000000000000004001000000000000010000000000000400000000000000010000000000000001000000000000000200000000000000008000000000000000010000000000000200000000000000010000000000000003000000000000000200000000000000b003000000000000004c1f330c71d4186a8a7aaf6d5a57aa321b82349eb6a532779a4f4a3c937768d389746747015a4233aa06a5fa2a3c1d7300c05000000000000100000000000001cc69cdb062bc42f0920c728c071d181b03000000000000000a0000000000000008000000000000100000000000c60000400000000000933f0000080000000040100000000000c70000010000000000933f0000000000000080110000000000c700803e0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700400000000000008b3f0000000000000080510000000000c700807e00000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f00"/640, 0x280, 0x50bec0}, {&(0x7f0000011d60)="0000000000000000010000000000000002000000000000000200000000000000cff1c57417e24dd8b151c4e92342213593a3cdbdf91559aa14f95a0af9b8919d89746747015a4233aa06a5fa2a3c1d7300005100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000010000000000000009000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b70100000a0000000000000084000000000000000026360000b70100"/384, 0x180, 0x50ffe0}, {&(0x7f0000011ee0)="000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x513680}, {&(0x7f0000011f40)="00000000000000000000000300000000000000000000000000000000c050000000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000030000000000", 0x60, 0x513720}, {&(0x7f0000011fa0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x513840}, {&(0x7f0000011fe0)="00000100000000000000000000000000000000401100000000000000000000000000004000000000000000000000000000000000000000000000010000000000", 0x40, 0x5138e0}, {&(0x7f0000012020)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x5139e0}, {&(0x7f0000012140)="00000000000000000000030000000000000000010000000000000040510000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x513b60}, {&(0x7f00000121c0)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x513c00}, {&(0x7f0000012200)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x513c80}, {&(0x7f0000012260)="000000000000000000000000000000000000030000000000000000000000000000000040500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300"/128, 0x80, 0x513d20}, {&(0x7f00000122e0)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x513e40}, {&(0x7f0000012320)="000000000000000000030000000000000000000000000000000080500000000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000300000000000000", 0x60, 0x513ee0}, {&(0x7f0000012380)="a38875d5be905146cbf324a050e09e164296f5b0d26b713ffd141049709fe70689746747015a4233aa06a5fa2a3c1d7300405100000000000100000000000001cc69cdb062bc42f0920c728c071d181b0300000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/160, 0xa0, 0x514000}, {&(0x7f0000012420)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000bc1f0be5307acce07bb7f515d200262d5cd10e839efb5b121790970203b022a389746747015a4233aa06a5fa2a3c1d7300805100000000000100000000000001cc69cdb062bc42f0920c728c071d181b040000000000000002000000000000000d000000000000100000000000c00000400000000000833f0000180000000040100000000000a90000000000000000623f0000210000000040110000000000a900000000000000004a3f0000180000000040110000000000b007000000000000004a3f0000000000000000500000000000a90000000000000000293f0000210000000000500000000000c00000800000000000113f0000180000000040510000000000a90000000000000000f03e0000210000000080510000000000a90000000000000000cf3e00002100000000c0510000000000a90000000000000000ae3e0000210000000000d00000000000c00000800000000000963e0000180000000000500100000000c000008000000000007e3e0000180000000000d00100000000a900000000000000005d3e0000210000000000d00100000000c00000000200000000453e0000180000000000d00100000000c00000000200000000453e0000180000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/704, 0x2c0, 0x517f40}, {&(0x7f00000126e0)="000000000000000000000000000000000000010000000000002400000000000000000000000000000000004000000000000000010000000000002400000000000000010000000000000004000000000000000200000000000000b00100000000000000000000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000010000000000000004000000000000000200000000000000b00a00000000000000010000000000000004000000000000000200000000000000b00200000000000000010000000000000003000000000000000200000000000000b00500000000000000000001000000000000010000000000000400000000000000010000000000000004000000000000000200000000000000b00400000000000000010000000000000001000000000000000200000000000000010000000000000004000000000000000200000000000000b003000000000000000080000000000000000100000000000002000000000000007d6a9f0ef4a5e5a3153df95598c4e19528767c509e021351fed84a75dd7ede7789746747015a4233aa06a5fa2a3c1d7300c05100000000000100000000000001cc69cdb062bc42f0920c728c071d181b04000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70040000000000000933f0000000000000080100000000000c700c0000000000000933f0000000000000080110000000000c700803e0000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000040500000000000c700000100000000008b3f0000000000000000520000000000c700007e00000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700008000000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000040d00100000000c700c0ff0100000000733f00"/832, 0x340, 0x51be80}, {&(0x7f0000012a20)="00000000000000000000000000000000000000000000000001000000000000000100000000000000010000000000000002000000000000000300000000000000", 0x40, 0x51ffc0}, {&(0x7f0000012a60)="4f0cdd160281a75dd6a22956d0b92d0fe10996948e4821f5885797ed32b5bdf089746747015a4233aa06a5fa2a3c1d7300005001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1500000}, {&(0x7f0000012b60)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73fb9a36888a5159c0ca6ee9eb1a52369fe027e5e411818c1dc4ec56e56f9a59ef89746747015a4233aa06a5fa2a3c1d7300405001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1503dc0}, {&(0x7f0000012ea0)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73", 0x240, 0x1507dc0}, {&(0x7f00000130e0)="4f0cdd160281a75dd6a22956d0b92d0fe10996948e4821f5885797ed32b5bdf089746747015a4233aa06a5fa2a3c1d7300005001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000030000000000000006000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000100000000000e93e0000500000000001000000000000e40000500000000000993e0000500000000001000000000000e40000d00000000000493e0000500000000001000000000000e40000500100000000d93d0000700000000001000000000000e40000d00100000000693d0000700000000000000000", 0x100, 0x1d00000}, {&(0x7f00000131e0)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000000400000000000000000001000000010000100000010001000100000000000000000050000000000061d45d3431c24775914130c4e4178bf10000400000000000020000000000000000000100000000000200000000000000001000000010000000100000010000000100000000000000000010000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000040060000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73fb9a36888a5159c0ca6ee9eb1a52369fe027e5e411818c1dc4ec56e56f9a59ef89746747015a4233aa06a5fa2a3c1d7300405001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000030000000000000004000000000100000000000000d80100000000000000393f0000620000000001000000000000e40000d00000000000e93e0000500000000001000000000000e40000500100000000793e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000093e0000700000000001000000000000e40000d00100000000b93d0000700000000000000000", 0x340, 0x1d03dc0}, {&(0x7f0000013520)="00000000000000000000000000000000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10000000200000000020000000000000000000100000000002400000000000000000001000000010000100000020001000100000000000000000050020000000061d45d3431c24775914130c4e4178bf10100000000000000000050040000000061d45d3431c24775914130c4e4178bf10000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100008000000000000200000000000000000001000000000001000000000000000000010000000100001000000100010001000000000000000000d0000000000061d45d3431c24775914130c4e4178bf101000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d73", 0x240, 0x1d07dc0}, {&(0x7f0000013760)="b8ea62be8f39d835299d4fdf38887eff45723fb2892e52c7f5e1be6ad171e37189746747015a4233aa06a5fa2a3c1d730000d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000002000000000000000c000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000040d00100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e00002100000000c0d10100000000a90000000000000000ae3e0000210000000000d20100000000a900000000000000008d3e0000210000000040d20100000000a900000000000000006c3e0000210000000080d20100000000a900000000000000004b3e00002100000000c0d20100000000a900000000000000002a3e0000210000000000d20100000000a900000000000000002a3e0000210000000000d20100000000a90000000000000000123e0000210000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/512, 0x200, 0x2500000}, {&(0x7f0000013960)="00000000000000000000000000000000000000000000000000000000000000010000000000000005000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00a00000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000005000000000000000200000000000000b00700000000000000010000000000000005000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000ab1c55044f8ab682d2363c61ebdcf0c870797cffee9b0ccf010741aff3716a1489746747015a4233aa06a5fa2a3c1d730040d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x2503e40}, {&(0x7f0000013bc0)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000e519fd80a33ac143f5c49ceef4d21b59fb8c17d234d43330d98ea81c76784c3789746747015a4233aa06a5fa2a3c1d730080d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007e3700003c0000000401000000000000010000000000000000de360000a000000004010000000000000c0001000000000000cf3600000f00000004010000000000001822a8f12600000000a03600002f000000040100000000000018d65ba13500000000713600002f00000004010000000000006c0000000000000000523600001f0000000501000000000000010000000000000000b2350000a000000005010000000000000c0001000000000000943500001e0000000601000000000000010000000000000000f4340000a000000006010000000000000c0001000000000000e13400001300000006010000000000006c0000000000000000683400007900"/992, 0x3e0, 0x2507f40}, {&(0x7f0000013fa0)="0000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0404010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000ee58cbab52ffe21f9d7e1e2f4aa7e524b8d3b8d1073d0e8dec5698b16fd0ec0889746747015a4233aa06a5fa2a3c1d7300c0d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000853600003c0000000401000000000000010000000000000000e5350000a000000004010000000000000c0001000000000000d63500000f00000004010000000000001822a8f12600000000a73500002f000000040100000000000018d65ba13500000000783500002f00000004010000000000006c0000000000000000593500001f0000000501000000000000010000000000000000b9340000a000000005010000000000000c00010000000000009b3400001e00000005010000000000006c000000000000000066340000350000000601000000000000010000000000000000c6330000a000000006010000000000000c0001000000000000b33300001300000006010000000000006c00000000000000003a3300007900"/3872, 0xf20, 0x250b4c0}, {&(0x7f0000014ec0)="0000000000000000000000000000000000000000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531070000000000000007000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000270000000000000027000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530070000000000000007000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c653003010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0406010000000000000100000000000000000700000000000000000009000166696c652e636f6c6405010000000000000100000000000000000700000000000000000005000166696c653305010000000000000100000000000000000700000000000000000005000166696c653204010000000000000100000000000000000700000000000000000005000166696c653101010000000000000100000000000000000700000000000000000005000266696c653004010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e030000000000000007000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000681f1f63000000005011fe04681f1f63000000005011fe04661f1f630000000000000000900456bc2bf1c67d22495a2f8f4581f1c1f7191d861a76cb6d77f74723258a0089746747015a4233aa06a5fa2a3c1d730000d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xd00, 0x250f380}, {&(0x7f0000015bc0)="686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5fa99b5d8dd7fea43a24642add984362c9d443e7c2260574d9de3d22c31bf90d3d89746747015a4233aa06a5fa2a3c1d730040d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b05000000000000000700000000000000", 0xc0, 0x2513fa0}, {&(0x7f0000015c80)="9830068bc7c407fb444de0d227963c690dc38b702df9bdcc06c4c4fa57d3c6e789746747015a4233aa06a5fa2a3c1d730080d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e0000210000000080d10100000000a900000000000000009a3e00002100000000c0d10100000000a90000000000000000793e0000210000000000d20100000000a90000000000000000583e0000210000000000d30100000000a90000000000000000373e0000210000000040d30100000000a90000000000000000163e0000210000000080d30100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x2518000}, {&(0x7f0000015e40)="0000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00a00000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000022082eef38f5258d79683ce27a579af5c269ea0de4cbe5d05076213b1f669c7e89746747015a4233aa06a5fa2a3c1d7300c0d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x251be40}, {&(0x7f00000160a0)="0000000000000000000000000000000000000000000000000000000002002e2e05000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f6300000000000000000000000000000000000000003cc8943d3e025f7a538ccfec80d308d1758ac8d7b8744c698f90d5fc058ed4a689746747015a4233aa06a5fa2a3c1d730000d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b050000000000000009000000000000000100000000d743525573ac41effb85e6fd1243b886e6933f0000080000000000", 0x140, 0x251ff40}, {&(0x7f00000161e0)="0000000000000000000000000000000000000000000000000500000000000000e0d48d4137ad71b93153a5c7dca00968e4547ae0daa76742c84706680f5a23ce89746747015a4233aa06a5fa2a3c1d730040d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/320, 0x140, 0x2523fe0}, {&(0x7f0000016320)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b3a618ec787b41985f939fcbd3e2a3feaa55f0a49b990e32bda8d4b700ee2b20289746747015a4233aa06a5fa2a3c1d730080d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b06000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000080d00100000000c700c0000000000000733f0000000000000080d10100000000c70040000000000000733f0000000000000000d30100000000c70000fd0100000000733f00"/800, 0x320, 0x2527ea0}, {&(0x7f0000016640)="00000000000000000000000000000000000000000000000003000000000000000200000000000000010000000000000001000000000000000100000000000000ea02ec9122398e4fec4ee69336bce20678181edf74f1a3fccb94e5896222334989746747015a4233aa06a5fa2a3c1d7300c0d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x252bfc0}, {&(0x7f0000016800)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x252f3a0}, {&(0x7f0000016880)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252f4c0}, {&(0x7f00000168e0)="0000000000000000000000000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252f560}, {&(0x7f0000016960)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x252f720}, {&(0x7f00000169c0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x252f840}, {&(0x7f0000016a00)="0000050000000000000000000000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/96, 0x60, 0x252f8e0}, {&(0x7f0000016a60)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x252f9e0}, {&(0x7f0000016b80)="00000000000000000000050000000000000000010000000000000040d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x252fb60}, {&(0x7f0000016c00)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x252fc00}, {&(0x7f0000016c40)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x252fc80}, {&(0x7f0000016ca0)="000000000000000000000000000000000000060000000000000000000000000000000040d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x252fd20}, {&(0x7f0000016d20)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x252fe40}, {&(0x7f0000016d60)="000000000000000000060000000000000000000000000000000000d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x252fee0}, {&(0x7f0000016dc0)="afafb14245be42af7264177acc341544c9beafc5000a1f5390c76ebd842a527189746747015a4233aa06a5fa2a3c1d730000d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b07000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70040000000000000733f0000000000000040d20100000000c700c0000000000000733f00000000000000c0d30100000000c70040fc0100000000733f000000", 0x1c0, 0x2530000}, {&(0x7f0000016f80)="0000000000000000000000000000000000000000000000000400000000000000020000000000000001000000000000000100000000000000010000000000000055747e6bc109e73765fd8e28f5b8907767f05ab539122092149c8a5109bd605e89746747015a4233aa06a5fa2a3c1d730040d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x2533fc0}, {&(0x7f0000017140)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x25373a0}, {&(0x7f00000171c0)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x25374c0}, {&(0x7f0000017220)="0000000000000000000000000000000000000000070000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x2537560}, {&(0x7f00000172a0)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x2537720}, {&(0x7f0000017300)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x2537840}, {&(0x7f0000017340)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x25378e0}, {&(0x7f00000173a0)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x25379e0}, {&(0x7f00000174e0)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x2537b60}, {&(0x7f00000175c0)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x2537c80}, {&(0x7f0000017620)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x2537d20}, {&(0x7f00000176a0)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x2537e40}, {&(0x7f00000176e0)="000000000000000000070000000000000000000000000000000080d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x2537ee0}, {&(0x7f0000017740)="05ea6b8aacc975cadcf1604ca7d007b138efd5936ab5965ad11b90d4b130464d89746747015a4233aa06a5fa2a3c1d730080d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x2538000}, {&(0x7f0000017840)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b000000000000000000000000000000000000000000000000000000000000000000000000000000009ac0aaf8165d4e3f003ab2a5afc8457b451cf57e81c96d7bd99a90808bd2c23b89746747015a4233aa06a5fa2a3c1d7300c0d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/672, 0x2a0, 0x253bee0}, {&(0x7f0000017ae0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x253f3a0}, {&(0x7f0000017b60)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x253f4c0}, {&(0x7f0000017bc0)="0000000000000000000000000000000000000000080000000000000000000000000000000040d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800"/128, 0x80, 0x253f560}, {&(0x7f0000017c40)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x253f720}, {&(0x7f0000017ca0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x253f840}, {&(0x7f0000017ce0)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x253f8e0}, {&(0x7f0000017d40)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x253f9e0}, {&(0x7f0000017e80)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x253fb60}, {&(0x7f0000017f60)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x253fc80}, {&(0x7f0000017fc0)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x253fd20}, {&(0x7f0000018040)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x253fe40}, {&(0x7f0000018080)="000000000000000000080000000000000000000000000000000000d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800000000000000", 0x60, 0x253fee0}, {&(0x7f00000180e0)="1e501bc81c61e7572837cacd4469b7133fe08ac28ca12b2332186229bfb93dd089746747015a4233aa06a5fa2a3c1d730000d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e00002100000000c0d10100000000a900000000000000009a3e0000210000000000d20100000000a90000000000000000793e0000210000000080d30100000000a90000000000000000583e00002100000000c0d30100000000a90000000000000000373e0000210000000000d40100000000a90000000000000000163e0000210000000040d40100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x2540000}, {&(0x7f00000182a0)="0000000000000000000000000000000000000000000000000000010000000000000008000000000000000200000000000000b00a00000000000000010000000000000008000000000000000200000000000000b00200000000000000010000000000000008000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000c44f7f10463c8b2b2c62dd163cdbb0fa304ae64d3251a27db4e3b16478c4f47089746747015a4233aa06a5fa2a3c1d730040d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b08000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70080000000000000733f0000000000000040d20100000000c70040010000000000733f0000000000000080d40100000000c70080fb0100000000733f000000", 0x380, 0x2543e40}, {&(0x7f0000018620)="00000000000000000000000000000000000000000000000004000000000000000200000000000000010000000000000001000000000000000100000000000000", 0x40, 0x2547fc0}, {&(0x7f0000018660)="66430b1f4a39ee8b3021ad29f69d28ee4c0f9ccd09472a0632d42746f13699d589746747015a4233aa06a5fa2a3c1d73000000040000000001000000000000005f42485266535f4d080000000000000000c0d30100000000004050010000000000000000000000000000000000000000000000080000000000700200000000000600000000000000010000000000000000100000004000000040000000100000810000000600000000000000000000000000000003000000000000004103000000000000030000000001000000000000000000000800000000000080050000000000100000001000000010000000000000000000000000000000000000000000000000000000000000000061d45d3431c24775914130c4e4178bf189746747015a4233aa06a5fa2a3c1d7300"/320, 0x140, 0x4000000}, {&(0x7f00000187a0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x4000220}, {&(0x7f00000187c0)="00000000000000000000000001000000000000e400005001000000000000800000000000020000000000000000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf10000000100000000002200000000000000000001000000010000100000020001000100000000000000000050010000000061d45d3431c24775914130c4e4178bf101000000000000000000d0010000000061d45d3431c24775914130c4e4178bf100"/256, 0x100, 0x4000320}, {&(0x7f00000188c0)="00000000000000000000000080d001000000000500000000000000000050010000000005000000000000000000d1010000000005000000000000000040d00100000000050000000000000000c0d0010000000005000000000000000040d10100000000050000000000000000000008000000000040020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d201000000000600000000000000004050010000000006000000000000000000d0010000000006000000000000000040d0010000000005000000000000000040d2010000000006000000000000000040d1010000000005000000000000000000000800000000004002000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d301000000000700000000000000004050010000000006000000000000000080d10100000000070000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d10100000000070000000000000000000008000000000070020000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0d301000000000800000000000000004050010000000006000000000000000000d40100000000080000000000000000c0d0010000000007000000000000000080d3010000000007000000000000000000d101000000000700000000000000000000080000000000700200000000000100"/640, 0x280, 0x4000b20}, {&(0x7f0000018b40)="b8ea62be8f39d835299d4fdf38887eff45723fb2892e52c7f5e1be6ad171e37189746747015a4233aa06a5fa2a3c1d730000d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000002000000000000000c000000000000d00000000000c00000800000000000833f0000180000000000500100000000c000008000000000006b3f0000180000000040500100000000a900000000000000004a3f0000210000000000d00100000000a90000000000000000293f0000210000000000d00100000000c00000000200000000113f0000180000000040d00100000000a90000000000000000f03e0000210000000040d10100000000a90000000000000000cf3e00002100000000c0d10100000000a90000000000000000ae3e0000210000000000d20100000000a900000000000000008d3e0000210000000040d20100000000a900000000000000006c3e0000210000000080d20100000000a900000000000000004b3e00002100000000c0d20100000000a900000000000000002a3e0000210000000000d20100000000a900000000000000002a3e0000210000000000d20100000000a90000000000000000123e0000210000000080110000000000b00a00000000000000f33e0000000000000000500000000000c00000800000000000db3e00001800"/512, 0x200, 0x4500000}, {&(0x7f0000018d40)="00000000000000000000000000000000000000000000000000000000000000010000000000000005000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000006000000000000000200000000000000b00100000000000000010000000000000006000000000000000200000000000000b00a00000000000000010000000000000006000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000005000000000000000200000000000000b00700000000000000010000000000000005000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00200000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000000000000000000000010000000000000100000000000000ab1c55044f8ab682d2363c61ebdcf0c870797cffee9b0ccf010741aff3716a1489746747015a4233aa06a5fa2a3c1d730040d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000050000000000000002000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x4503e40}, {&(0x7f0000018fa0)="0000000000000000000000000000000000000000000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000e519fd80a33ac143f5c49ceef4d21b59fb8c17d234d43330d98ea81c76784c3789746747015a4233aa06a5fa2a3c1d730080d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000005000000000000001b000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e00002300000001010000000000000100000000000000009c3d0000a000000001010000000000000c00010000000000008d3d00000f0000000101000000000000544bae7904000000006a3d000023000000010100000000000054482d12f600000000473d0000230000000201000000000000010000000000000000a73c0000a000000002010000000000000c0101000000000000983c00000f00000002010000000000006c0000000000000000693800002f0400000301000000000000010000000000000000c9370000a000000003010000000000000c0101000000000000ba3700000f00000003010000000000006c00000000000000007e3700003c0000000401000000000000010000000000000000de360000a000000004010000000000000c0001000000000000cf3600000f00000004010000000000001822a8f12600000000a03600002f000000040100000000000018d65ba13500000000713600002f00000004010000000000006c0000000000000000523600001f0000000501000000000000010000000000000000b2350000a000000005010000000000000c0001000000000000943500001e0000000601000000000000010000000000000000f4340000a000000006010000000000000c0001000000000000e13400001300000006010000000000006c0000000000000000683400007900"/992, 0x3e0, 0x4507f40}, {&(0x7f0000019380)="0000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff8100000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000000000000000000000000000000000000000000000000000010000000000000000000000ff410000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0404010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000ee58cbab52ffe21f9d7e1e2f4aa7e524b8d3b8d1073d0e8dec5698b16fd0ec0889746747015a4233aa06a5fa2a3c1d7300c0d001000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000050000000000000023000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c0000000001000000000000544bae790400000000cc3e0000230000000001000000000000546b826b1100000000a53e000027000000000100000000000054bf5d291700000000823e000023000000000100000000000054bcde42e5000000005f3e000023000000000100000000000054482d12f6000000003c3e0000230000000001000000000000600200000000000000193e0000230000000001000000000000600300000000000000f63d0000230000000001000000000000600400000000000000d33d0000230000000001000000000000600500000000000000b03d0000230000000001000000000000600600000000000000893d0000270000000101000000000000010000000000000000e93c0000a000000001010000000000000c0001000000000000da3c00000f0000000101000000000000544bae790400000000b73c000023000000010100000000000054482d12f600000000943c0000230000000101000000000000600200000000000000713c00002300000001010000000000006003000000000000004e3c0000230000000201000000000000010000000000000000ae3b0000a000000002010000000000000c01010000000000009f3b00000f00000002010000000000006c0000000000000000703700002f0400000301000000000000010000000000000000d0360000a000000003010000000000000c0101000000000000c13600000f00000003010000000000006c0000000000000000853600003c0000000401000000000000010000000000000000e5350000a000000004010000000000000c0001000000000000d63500000f00000004010000000000001822a8f12600000000a73500002f000000040100000000000018d65ba13500000000783500002f00000004010000000000006c0000000000000000593500001f0000000501000000000000010000000000000000b9340000a000000005010000000000000c00010000000000009b3400001e00000005010000000000006c000000000000000066340000350000000601000000000000010000000000000000c6330000a000000006010000000000000c0001000000000000b33300001300000006010000000000006c00000000000000003a3300007900"/3872, 0xf20, 0x450b4c0}, {&(0x7f000001a2a0)="0000000000000000000000000000000000000000000000000000000000000007000000000000006400000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572730600000000000000090066696c652e636f6c6407000000000000000700000000000000640000000000000064000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000003000000000000000000000010000d000000000000030000000000000000000000000000000300000000000000400000000000000050066696c65320500000000000000050066696c653307000000000000000700000000000000282300000000000000300000000000000000000000000000020000000000000000000000ed810000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000000a00000000000000000000000073797a6b616c6c6572730000000000000000000000000000000000070000000000000006000b0008757365722e7861747472317861747472310000000000000000000000000000000000070000000000000006000b0008757365722e7861747472327861747472320300000000000000050066696c6531070000000000000007000000000000000a000000000000000a000000000000000000000000000000010000000000000000000000ed810000000000000000000000000000000000000b000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe040700000000000000270000000000000000000000002f746d702f73797a2d696d61676567656e323830353736363337312f66696c65302f66696c65300300000000000000050066696c653107000000000000000700000000000000270000000000000027000000000000000000000000000000010000000000000000000000ffa100000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0407000000000000001a04000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c0200000000000000050066696c6530070000000000000007000000000000001a040000000000001a040000000000000000000000000000010000000000000000000000ed8100000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0403010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c653003010000000000000100000000000000000700000000000000000005000766696c653102010000000000000100000000000000000700000000000000000005000166696c65300200000000000000050066696c653007000000000000000700000000000000140000000000000000000000000000000000000000000000010000000000000000000000ed410000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe04681f1f63000000005011fe0406010000000000000100000000000000000700000000000000000009000166696c652e636f6c6405010000000000000100000000000000000700000000000000000005000166696c653305010000000000000100000000000000000700000000000000000005000166696c653204010000000000000100000000000000000700000000000000000005000166696c653101010000000000000100000000000000000700000000000000000005000266696c653004010000000000000100000000000000000700000000000000000005000166696c653105010000000000000100000000000000000700000000000000000005000166696c653205010000000000000100000000000000000700000000000000000005000166696c653306010000000000000100000000000000000700000000000000000009000166696c652e636f6c6401010000000000000100000000000000000700000000000000000005000266696c6530000000000000000002002e2e030000000000000007000000000000003a0000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000681f1f63000000005011fe04681f1f63000000005011fe04661f1f630000000000000000900456bc2bf1c67d22495a2f8f4581f1c1f7191d861a76cb6d77f74723258a0089746747015a4233aa06a5fa2a3c1d730000d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000007000000000000000100000000f6ffffffffffffff800000d000000000003b3f0000600000000000", 0xd00, 0x450f380}, {&(0x7f000001afa0)="686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5f686ede9288c391e7e05026e56f2f91bfd879987a040ea98445dabc76f55b8e5fa99b5d8dd7fea43a24642add984362c9d443e7c2260574d9de3d22c31bf90d3d89746747015a4233aa06a5fa2a3c1d730040d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b05000000000000000700000000000000", 0xc0, 0x4513fa0}, {&(0x7f000001b060)="9830068bc7c407fb444de0d227963c690dc38b702df9bdcc06c4c4fa57d3c6e789746747015a4233aa06a5fa2a3c1d730080d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e0000210000000080d10100000000a900000000000000009a3e00002100000000c0d10100000000a90000000000000000793e0000210000000000d20100000000a90000000000000000583e0000210000000000d30100000000a90000000000000000373e0000210000000040d30100000000a90000000000000000163e0000210000000080d30100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x4518000}, {&(0x7f000001b220)="0000000000000000000000000000000000000000000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000007000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00a00000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00200000000000000010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b20500000000000000050100000000000000000000000000000100000022082eef38f5258d79683ce27a579af5c269ea0de4cbe5d05076213b1f669c7e89746747015a4233aa06a5fa2a3c1d7300c0d101000000000100000000000001cc69cdb062bc42f0920c728c071d181b0500000000000000f7ffffffffffffff02000000000001000000000000010000000000000000fb3e0000a000000000010000000000000c0001000000000000ef3e00000c00"/608, 0x260, 0x451be40}, {&(0x7f000001b480)="0000000000000000000000000000000000000000000000000000000002002e2e05000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f6300000000000000000000000000000000000000003cc8943d3e025f7a538ccfec80d308d1758ac8d7b8744c698f90d5fc058ed4a689746747015a4233aa06a5fa2a3c1d730000d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b050000000000000009000000000000000100000000d743525573ac41effb85e6fd1243b886e6933f0000080000000000", 0x140, 0x451ff40}, {&(0x7f000001b5c0)="0000000000000000000000000000000000000000000000000500000000000000e0d48d4137ad71b93153a5c7dca00968e4547ae0daa76742c84706680f5a23ce89746747015a4233aa06a5fa2a3c1d730040d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b0600000000000000040000000000000005000000000100000000000000cc0000d000000000006b3f0000300000000100000000000000cc00005001000000003b3f0000300000000100000000000000cc0000d001000000000b3f0000300000000100000000000000cc0000500200000000db3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc0000500400000000ab3e0000300000000100000000000000cc00005004000000007b3e00003000"/320, 0x140, 0x4523fe0}, {&(0x7f000001b700)="00000000000000000000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b3a618ec787b41985f939fcbd3e2a3feaa55f0a49b990e32bda8d4b700ee2b20289746747015a4233aa06a5fa2a3c1d730080d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b06000000000000000a000000000000000d000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000000d00000000000c70000800000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000080d00100000000c700c0000000000000733f0000000000000080d10100000000c70040000000000000733f0000000000000000d30100000000c70000fd0100000000733f00"/800, 0x320, 0x4527ea0}, {&(0x7f000001ba20)="00000000000000000000000000000000000000000000000003000000000000000200000000000000010000000000000001000000000000000100000000000000ea02ec9122398e4fec4ee69336bce20678181edf74f1a3fccb94e5896222334989746747015a4233aa06a5fa2a3c1d7300c0d201000000000100000000000001cc69cdb062bc42f0920c728c071d181b060000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x452bfc0}, {&(0x7f000001bbe0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x452f3a0}, {&(0x7f000001bc60)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452f4c0}, {&(0x7f000001bcc0)="0000000000000000000000000000000000000000060000000000000000000000000000000080d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452f560}, {&(0x7f000001bd40)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x452f720}, {&(0x7f000001bda0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x452f840}, {&(0x7f000001bde0)="0000050000000000000000000000000000000040d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/96, 0x60, 0x452f8e0}, {&(0x7f000001be40)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41", 0x120, 0x452f9e0}, {&(0x7f000001bf60)="00000000000000000000050000000000000000010000000000000040d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500000000000000d743525573ac41ef85e6fd1243b886e600"/128, 0x80, 0x452fb60}, {&(0x7f000001bfe0)="0000000000000000000000000000000000661f1f630000000000000000661f1f6300"/64, 0x40, 0x452fc00}, {&(0x7f000001c020)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x452fc80}, {&(0x7f000001c080)="000000000000000000000000000000000000060000000000000000000000000000000040d20100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600"/128, 0x80, 0x452fd20}, {&(0x7f000001c100)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x452fe40}, {&(0x7f000001c140)="000000000000000000060000000000000000000000000000000000d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000600000000000000", 0x60, 0x452fee0}, {&(0x7f000001c1a0)="afafb14245be42af7264177acc341544c9beafc5000a1f5390c76ebd842a527189746747015a4233aa06a5fa2a3c1d730000d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b07000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70040000000000000733f0000000000000040d20100000000c700c0000000000000733f00000000000000c0d30100000000c70040fc0100000000733f000000", 0x1c0, 0x4530000}, {&(0x7f000001c360)="0000000000000000000000000000000000000000000000000400000000000000020000000000000001000000000000000100000000000000010000000000000055747e6bc109e73765fd8e28f5b8907767f05ab539122092149c8a5109bd605e89746747015a4233aa06a5fa2a3c1d730040d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b070000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/448, 0x1c0, 0x4533fc0}, {&(0x7f000001c520)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x45373a0}, {&(0x7f000001c5a0)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x45374c0}, {&(0x7f000001c600)="0000000000000000000000000000000000000000070000000000000000000000000000000000d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x4537560}, {&(0x7f000001c680)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x4537720}, {&(0x7f000001c6e0)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x4537840}, {&(0x7f000001c720)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x45378e0}, {&(0x7f000001c780)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x45379e0}, {&(0x7f000001c8c0)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x4537b60}, {&(0x7f000001c9a0)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x4537c80}, {&(0x7f000001ca00)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x4537d20}, {&(0x7f000001ca80)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x4537e40}, {&(0x7f000001cac0)="000000000000000000070000000000000000000000000000000080d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000", 0x60, 0x4537ee0}, {&(0x7f000001cb20)="05ea6b8aacc975cadcf1604ca7d007b138efd5936ab5965ad11b90d4b130464d89746747015a4233aa06a5fa2a3c1d730080d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b0700000000000000040000000000000006000000000000000000000000f90100000000000000733f0000280000000100000000000000cc0000d00000000000433f0000300000000100000000000000cc0000500100000000133f0000300000000100000000000000cc0000d00100000000e33e0000300000000100000000000000cc0000500200000000b33e0000300000000100000000000000cc0000500400000000833e0000300000000000000000", 0x100, 0x4538000}, {&(0x7f000001cc20)="0000000000000000030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d001000000000000000200000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b0300000000000000000100000000000000005001000000000000800000000000cc69cdb062bc42f0920c728c071d181b030000000000000000010000000000000000d000000000000000800000000000cc69cdb062bc42f0920c728c071d181b000000000000000000000000000000000000000000000000000000000000000000000000000000009ac0aaf8165d4e3f003ab2a5afc8457b451cf57e81c96d7bd99a90808bd2c23b89746747015a4233aa06a5fa2a3c1d7300c0d301000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000001000000000000000b000000000200000000000000840000000000000000e43d0000b701000004000000000000008400000000000000002d3c0000b701000005000000000000000c06000000000000001c3c0000110000000500000000000000840000000000000000653a0000b70100000600000000000000010000000000000000c5390000a000000006000000000000000c0600000000000000b93900000c000000060000000000000054d2c2bf8d0000000094390000250000000700000000000000840000000000000000dd370000b7010000090000000000000084000000000000000026360000b70100000a000000000000008400000000000000006f340000b7010000f7ffffffffffffff840000000000000000b8320000b70100"/672, 0x2a0, 0x453bee0}, {&(0x7f000001cec0)="00000000000000000000000000000000000000000000000000000000000500000000000000000100000000000000c0d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000500"/128, 0x80, 0x453f3a0}, {&(0x7f000001cf40)="000000000000000000000000000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x453f4c0}, {&(0x7f000001cfa0)="0000000000000000000000000000000000000000080000000000000000000000000000000040d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800"/128, 0x80, 0x453f560}, {&(0x7f000001d020)="0000000000000000000000050000000000000000000000000000000000d2010000000000000000000000000040000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000050000000000", 0x60, 0x453f720}, {&(0x7f000001d080)="000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed410000000000000000", 0x40, 0x453f840}, {&(0x7f000001d0c0)="0000070000000000000000000000000000000000d10100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/96, 0x60, 0x453f8e0}, {&(0x7f000001d120)="00000000000000000000000000000000000000000000000000050000000000000084ffffffffffffffff0000000000000000000007000264656661756c74000000000000000002002e2e03000000000000000000000000000000000000000000000000400000000000000000000000000000010000000000000000000000ed4100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000661f1f630000000000000000661f1f630000000000000000661f1f630000000000000000661f1f63000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed41000000000000000000000000008000"/320, 0x140, 0x453f9e0}, {&(0x7f000001d260)="000000000000000000000700000000000000000100000000000000c0d00100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700000000000000d743525573ac41ef85e6fd1243b886e600000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000681f1f6300000000f09d4105661f1f6300"/224, 0xe0, 0x453fb60}, {&(0x7f000001d340)="000000000000000000070064656661756c7401000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100"/96, 0x60, 0x453fc80}, {&(0x7f000001d3a0)="000000000000000000000000000000000000070000000000000000000000000000000080d30100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000700"/128, 0x80, 0x453fd20}, {&(0x7f000001d420)="00000000000000000001000000000000000000000000000000030000000000000000400000000000000000000000000000010000000000000000000000ed4100", 0x40, 0x453fe40}, {&(0x7f000001d460)="000000000000000000080000000000000000000000000000000000d40100000000000000000000000000400000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000800000000000000", 0x60, 0x453fee0}, {&(0x7f000001d4c0)="1e501bc81c61e7572837cacd4469b7133fe08ac28ca12b2332186229bfb93dd089746747015a4233aa06a5fa2a3c1d730000d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b080000000000000002000000000000000d000000000000d00000000000a80030000000000000663f0000350000000000d00000000000c000008000000000004e3f0000180000000000500100000000c00000800000000000363f0000180000000040500100000000a90000000000000000153f0000210000000000d00100000000c00000000200000000fd3e00001800000000c0d00100000000a90000000000000000dc3e0000210000000000d10100000000a90000000000000000bb3e00002100000000c0d10100000000a900000000000000009a3e0000210000000000d20100000000a90000000000000000793e0000210000000080d30100000000a90000000000000000583e00002100000000c0d30100000000a90000000000000000373e0000210000000000d40100000000a90000000000000000163e0000210000000040d40100000000a90000000000000000f53d00002100"/448, 0x1c0, 0x4540000}, {&(0x7f000001d680)="0000000000000000000000000000000000000000000000000000010000000000000008000000000000000200000000000000b00a00000000000000010000000000000008000000000000000200000000000000b00200000000000000010000000000000008000000000000000200000000000000b00100000000000000010000000000000007000000000000000200000000000000b00400000000000000010000000000000005000000000000000200000000000000b00900000000000000010000000000000005000000000000000200000000000000b0f7ffffffffffffff010000000000000007000000000000000200000000000000b00700000000000000010000000000000007000000000000000200000000000000b00500000000000000000002000000000000010000000000002400000000000000010000000000000006000000000000000200000000000000b00300000000000000004000000000000000010000000000002200000000000000003000000000000000010000000000000100000000000000010000000000000007000000000000000100000000000000b205000000000000000501000000000000000000000000000001000000c44f7f10463c8b2b2c62dd163cdbb0fa304ae64d3251a27db4e3b16478c4f47089746747015a4233aa06a5fa2a3c1d730040d401000000000100000000000001cc69cdb062bc42f0920c728c071d181b08000000000000000a000000000000000e000000000000100000000000c60000400000000000933f0000080000000000100000000000c70000400000000000933f0000000000000000500000000000c600008000000000008b3f0000080000000000500000000000c700008000000000008b3f0000000000000000d00000000000c60000800000000000833f0000080000000030d00000000000c700d07f0000000000833f0000000000000000500100000000c600008000000000007b3f0000080000000000500100000000c700400000000000007b3f0000000000000080500100000000c700807f00000000007b3f0000000000000000d00100000000c60000000200000000733f0000080000000000d00100000000c700c0000000000000733f0000000000000040d10100000000c70080000000000000733f0000000000000040d20100000000c70040010000000000733f0000000000000080d40100000000c70080fb0100000000733f000000", 0x380, 0x4543e40}, {&(0x7f000001da00)="00000000000000000000000000000000000000000000000004000000000000000200000000000000010000000000000001000000000000000100000000000000", 0x40, 0x4547fc0}], 0x0, &(0x7f000001da40), 0x1) (async) 04:31:45 executing program 1: syz_mount_image$ext4(&(0x7f0000000000)='ext3\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x17, &(0x7f0000000200)=[{&(0x7f0000011840)='\x00\x00', 0x2, 0x3}, {&(0x7f0000000540)=' \x00\x00', 0x3, 0x5}, {&(0x7f0000000140)='\x00\x00\x00\x00\x00\b\x00'/24, 0x18, 0x8}, {&(0x7f0000011860)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x20}, {&(0x7f0000000800)="200000000002000019000000900100000f000000000000000100000005000000000004ddff3f000020000000731f1f63731f1f630100ffff53ef010001000000721f1f635b8e281a0000000001000000000000000b0000000001000004000000000000002b0200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e393332393635373533000000000000f1da552c8028bc0500"/200, 0xc8, 0x400}, {&(0x7f0000000040)="000000000000000000000000bfd7fbde2cd74131b8ed5eef968344d001004000160000721f1f630000000011fc53fe991700000000000000000000000000000000c35269cf8f2a671042ff013d116f6efc93ca9a8b54b3", 0x57, 0x4e0}, {&(0x7f0000000400)="00000000000000000000000000000000000000000000000000000000200020000100000000000500400000000000000000000000000000004300000000000000", 0x40, 0x540}, {&(0x7f0000000580)="00000000000000000100000000000000000000000000ba000000000000000000bd43531db7b879f8d846c247e9737cd84ec87d3dc6b85ddf186130dbd3b3a913ffde7d82a1115ce7e3b3792203ea5aa5077b62c99a1f46a3dee2e4f3252f03cb6a280731c3cc7b1a1f3d713befe483c0538a1ed27cac4414257a87767a9eb6750a72d822478a42b549d54b6e787384ad0f36e4dfe9004482a0020ab7cc3b620cd21030b25d039a1298154a5f83a3784179a74bfa3b4751d819fc925bf023eff2b06205e2a7951344f2377880a1ae8312559430c6b1646b39910969ef6a847138ff4338888cc3759f61c3fc76685f0a8f63b1e45f6bad2b8eee32020559b06f5e38f9386e9169e41c7583febea5c13374d1224423ebbb7f7854b6dd8ea50154abe5cd0c6cdb052596ff1d6f967e23fb2158ca80480c2fe98258d54fa50c000000000000539230fd17e6bac57bdc53cdb2be", 0x151, 0x640}, {&(0x7f0000010160)="0500000003000000040000003d1fd6c49fc07094e4ca1270a419000f00030004", 0x20, 0x800}, {&(0x7f00000111a0)="ed41000000080000721f1f63731f1f63731f1f6300000000000004004000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x2100}, {&(0x7f00000111e0)="2000000004ed65de04ed65de00000000721f1f6300"/32, 0x20, 0x2183}, {&(0x7f0000000440)="8081000000601020721f1f09000000000000005763000000000000010040000000000000d5129c6e0bf1fb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000100000000000000000000000000000000000000000000000000000020000000000000000000000000000000721f1f630000000000001f00000000", 0xa7, 0x2600}, {&(0x7f00000112a0)="c0410000954ddfaf721f1f63721f0f63721f1f630000007bf10002004000000000000800000000000af301000400000000000000000000000700000020000000", 0x40, 0x2a00}, {&(0x7f0000011320)="ed410000d9aebd6c1d6ae032a358af34f5c0087a2809743b731f1f63731f1f630000000000000200000000000000001003000000020000000d0000001000050166696c65300000000e0000002800050766696c65310000000000000000000000000000000000000000000000000000006fc3a7c40000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040700"/192, 0xc0, 0x2b00}, {&(0x7f0000011480)="ffa1000026000000731f1f63731f1f63731f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3933323936353735332f66696c65302f66696c6530000000000000000000000000000000000000000000009d621b1c0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000", 0xa0, 0x2d00}, {&(0x7f0000000900)="ed81000064000000731f1f63731f1f63731f1f63000000000000010000000000000000100100000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c2872a1fd0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040734000000000028000000000000006461746100000000000000000000000000000000000000000000000000000000000000006c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572738f459ccd32a75d274cf00e94454abb30ab1a87c0e0880e0655a931b6dd21dffe54e4cc679115210adaa957fa0e1ecc2cc40a302e7bdd2e7a2ab8333334e92701bacc2d0570fee62aeecba803b62bae11370aa20e0dd6d2886255f0c6ea16c4f08c8022ddf6b44c52da27e9835a292ceb0b845f6fd19716f8bda9ad33905809b4fdd98df742b1fcbe8471666df5287de01a8e0ba240c155ccd6ff415c59c2cf4aa22013fa7f44b6aa32378ba7e61d63942e7f9a92a7fe302259d7fdc38edf2cc4affa745ad84461b951dedc0c2b72092a412b31124d8ef4a33464ce8f8a52f7760b768b28a3597b141b21b90ca59af905131e669e15578df797c034042ca2d4decaff82313ef830db4a5b9a759a41a596a1", 0x211, 0x3000}, {&(0x7f00000117c0)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c6533000000110000009407090166696c652e636f6c64000000", 0x80, 0x8000}, {&(0x7f00000118a0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x11800}, {&(0x7f00000118c0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x12000}, {&(0x7f00000001c0)="00000000000800000000000000000000000000000000000000000000000000009609fa720b14f5918d9ed8c0d23d910262df49375c63d727224cd86f2c8cc710", 0x40, 0x12800}, {&(0x7f00000000c0)="00000000000800f5c76edf2608f38ca97255a3495a00"/46, 0x2e, 0x13000}, {&(0x7f0000011920)="504d4d00504d4dff731f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d00000000000000000000000000000000000000000000000000006c6f6f7032310075782f746573742f73797a5f6d6f756e745f696d6167655f650500"/112, 0x70, 0x20000}, {&(0x7f0000002040)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000b6ca6b810358486c77e520ca5de40683779b42a74ab147756edd375dd121d13da0952339cefa13785bb2c0bacd154ae9824c8a86087373998169196169cb2b08455f47e12a239e50f7ffc836c7a28fa539a97027a07de105d240dd607a0e2b694ce476ce05aea1baeb6ae3132a678f324e9a2f09933022b462095731ebe57344f1", 0x4a1, 0x28000}], 0x0, &(0x7f0000002500)=ANY=[@ANYBLOB="00b30824400d21223433bba32035e2ef9711604edf71b82a8fe52765aad2d7836b1a3ba0706a2dbcd3adf3d38a57682198b853fa4e230125fe79a2c4a7e50ec75460bae8f5acee1959c9550f63773d76ea03ae36b4244835a3f5f544aed5577b0212798accf91ecde8621a9dc5cdfee2760508003ff361f94fc318010089b3532183ea8fc6be3f005afae337349b43c202d6c180a2eee27ed2ad99acc703246b4e35b433911d3cfdb6767dff8c0cc2f91ab6c42ebc2c5272197f36cb798833f97edcb11ddfa31834d602f22fe26d5b2094db8417389935f42d9213023fdd367aa1c38e70b68e44ebf44b3fd67798b083f989ae3a4c3cd6f55f339b9ff82bbc68ee3e549c5e63c09b85229f97849d8b093b9cf175f084f4d1a1097057d59d20eae608993156ff12bff4d9c3fa67cf0000ebf075f462f53b6ff908000000c3b95e3b508d50999603000000000000000515bf522ec94a08990c46311f75c2d6b452829b7dbcaf7745a0b7158d7db8120006583c495455301c782bec88a9684756bec6942209ba84329b882d2c9b9287710dbac1269e7c01474ddba5000000001419eca1f3c4ff0a8fb1de3b1bf8d2b875ff49f1efbee816d6635d4ce94f0c5344ebfd68092abecee6e19b4badd6467247c7fa1ab6b8325ba0960337d290545a71be6201d09e5f876468ab32f7c396cd097285139d6c5ee94af37dab2f1fdcdafb7e677f88fd1f41e368ee7dc6c40b1673bac55f5c3440a5bba5c0ebde02ec6a5f7b320841d0bf6b79393eb5195eb39fcde46b9b08cc5e2e3645de0a77603bbdd4011d67c691f4664eee5d25165ada9751678cf7d38c6309b5f457474e81258d68c076ab388761a6d036ead2a51511f5e8657e5038af1632dc7e1e9888d4651542e0e1df8b8314492554b2832f2d7b764d2d52ef2e2569caf83dc1e6c4", @ANYRESOCT, @ANYRES32=0x0], 0x1) [ 729.741802][T21911] loop4: detected capacity change from 0 to 2048 [ 729.776531][T21911] UDF-fs: bad mount option "umask=0000000000000000000314" or missing value [ 729.786475][T21917] loop1: detected capacity change from 0 to 2048 [ 729.830567][T21917] EXT4-fs (loop1): couldn't mount as ext3 due to feature incompatibilities 04:31:45 executing program 1: syz_mount_image$ext4(&(0x7f0000000000)='ext3\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x17, &(0x7f0000000200)=[{&(0x7f0000011840)='\x00\x00', 0x2, 0x3}, {&(0x7f0000000540)=' \x00\x00', 0x3, 0x5}, {&(0x7f0000000140)='\x00\x00\x00\x00\x00\b\x00'/24, 0x18, 0x8}, {&(0x7f0000011860)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x20}, {&(0x7f0000000800)="200000000002000019000000900100000f000000000000000100000005000000000004ddff3f000020000000731f1f63731f1f630100ffff53ef010001000000721f1f635b8e281a0000000001000000000000000b0000000001000004000000000000002b0200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e393332393635373533000000000000f1da552c8028bc0500"/200, 0xc8, 0x400}, {&(0x7f0000000040)="000000000000000000000000bfd7fbde2cd74131b8ed5eef968344d001004000160000721f1f630000000011fc53fe991700000000000000000000000000000000c35269cf8f2a671042ff013d116f6efc93ca9a8b54b3", 0x57, 0x4e0}, {&(0x7f0000000400)="00000000000000000000000000000000000000000000000000000000200020000100000000000500400000000000000000000000000000004300000000000000", 0x40, 0x540}, {&(0x7f0000000580)="00000000000000000100000000000000000000000000ba000000000000000000bd43531db7b879f8d846c247e9737cd84ec87d3dc6b85ddf186130dbd3b3a913ffde7d82a1115ce7e3b3792203ea5aa5077b62c99a1f46a3dee2e4f3252f03cb6a280731c3cc7b1a1f3d713befe483c0538a1ed27cac4414257a87767a9eb6750a72d822478a42b549d54b6e787384ad0f36e4dfe9004482a0020ab7cc3b620cd21030b25d039a1298154a5f83a3784179a74bfa3b4751d819fc925bf023eff2b06205e2a7951344f2377880a1ae8312559430c6b1646b39910969ef6a847138ff4338888cc3759f61c3fc76685f0a8f63b1e45f6bad2b8eee32020559b06f5e38f9386e9169e41c7583febea5c13374d1224423ebbb7f7854b6dd8ea50154abe5cd0c6cdb052596ff1d6f967e23fb2158ca80480c2fe98258d54fa50c000000000000539230fd17e6bac57bdc53cdb2be", 0x151, 0x640}, {&(0x7f0000010160)="0500000003000000040000003d1fd6c49fc07094e4ca1270a419000f00030004", 0x20, 0x800}, {&(0x7f00000111a0)="ed41000000080000721f1f63731f1f63731f1f6300000000000004004000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x2100}, {&(0x7f00000111e0)="2000000004ed65de04ed65de00000000721f1f6300"/32, 0x20, 0x2183}, {&(0x7f0000000440)="8081000000601020721f1f09000000000000005763000000000000010040000000000000d5129c6e0bf1fb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000100000000000000000000000000000000000000000000000000000020000000000000000000000000000000721f1f630000000000001f00000000", 0xa7, 0x2600}, {&(0x7f00000112a0)="c0410000954ddfaf721f1f63721f0f63721f1f630000007bf10002004000000000000800000000000af301000400000000000000000000000700000020000000", 0x40, 0x2a00}, {&(0x7f0000011320)="ed410000d9aebd6c1d6ae032a358af34f5c0087a2809743b731f1f63731f1f630000000000000200000000000000001003000000020000000d0000001000050166696c65300000000e0000002800050766696c65310000000000000000000000000000000000000000000000000000006fc3a7c40000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040700"/192, 0xc0, 0x2b00}, {&(0x7f0000011480)="ffa1000026000000731f1f63731f1f63731f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3933323936353735332f66696c65302f66696c6530000000000000000000000000000000000000000000009d621b1c0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000", 0xa0, 0x2d00}, {&(0x7f0000000900)="ed81000064000000731f1f63731f1f63731f1f63000000000000010000000000000000100100000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c2872a1fd0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040734000000000028000000000000006461746100000000000000000000000000000000000000000000000000000000000000006c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572738f459ccd32a75d274cf00e94454abb30ab1a87c0e0880e0655a931b6dd21dffe54e4cc679115210adaa957fa0e1ecc2cc40a302e7bdd2e7a2ab8333334e92701bacc2d0570fee62aeecba803b62bae11370aa20e0dd6d2886255f0c6ea16c4f08c8022ddf6b44c52da27e9835a292ceb0b845f6fd19716f8bda9ad33905809b4fdd98df742b1fcbe8471666df5287de01a8e0ba240c155ccd6ff415c59c2cf4aa22013fa7f44b6aa32378ba7e61d63942e7f9a92a7fe302259d7fdc38edf2cc4affa745ad84461b951dedc0c2b72092a412b31124d8ef4a33464ce8f8a52f7760b768b28a3597b141b21b90ca59af905131e669e15578df797c034042ca2d4decaff82313ef830db4a5b9a759a41a596a1", 0x211, 0x3000}, {&(0x7f00000117c0)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c6533000000110000009407090166696c652e636f6c64000000", 0x80, 0x8000}, {&(0x7f00000118a0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x11800}, {&(0x7f00000118c0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x12000}, {&(0x7f00000001c0)="00000000000800000000000000000000000000000000000000000000000000009609fa720b14f5918d9ed8c0d23d910262df49375c63d727224cd86f2c8cc710", 0x40, 0x12800}, {&(0x7f00000000c0)="00000000000800f5c76edf2608f38ca97255a3495a00"/46, 0x2e, 0x13000}, {&(0x7f0000011920)="504d4d00504d4dff731f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d00000000000000000000000000000000000000000000000000006c6f6f7032310075782f746573742f73797a5f6d6f756e745f696d6167655f650500"/112, 0x70, 0x20000}, {&(0x7f0000002040)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000b6ca6b810358486c77e520ca5de40683779b42a74ab147756edd375dd121d13da0952339cefa13785bb2c0bacd154ae9824c8a86087373998169196169cb2b08455f47e12a239e50f7ffc836c7a28fa539a97027a07de105d240dd607a0e2b694ce476ce05aea1baeb6ae3132a678f324e9a2f09933022b462095731ebe57344f1", 0x4a1, 0x28000}], 0x0, &(0x7f0000002500)=ANY=[@ANYBLOB="00b30824400d21223433bba32035e2ef9711604edf71b82a8fe52765aad2d7836b1a3ba0706a2dbcd3adf3d38a57682198b853fa4e230125fe79a2c4a7e50ec75460bae8f5acee1959c9550f63773d76ea03ae36b4244835a3f5f544aed5577b0212798accf91ecde8621a9dc5cdfee2760508003ff361f94fc318010089b3532183ea8fc6be3f005afae337349b43c202d6c180a2eee27ed2ad99acc703246b4e35b433911d3cfdb6767dff8c0cc2f91ab6c42ebc2c5272197f36cb798833f97edcb11ddfa31834d602f22fe26d5b2094db8417389935f42d9213023fdd367aa1c38e70b68e44ebf44b3fd67798b083f989ae3a4c3cd6f55f339b9ff82bbc68ee3e549c5e63c09b85229f97849d8b093b9cf175f084f4d1a1097057d59d20eae608993156ff12bff4d9c3fa67cf0000ebf075f462f53b6ff908000000c3b95e3b508d50999603000000000000000515bf522ec94a08990c46311f75c2d6b452829b7dbcaf7745a0b7158d7db8120006583c495455301c782bec88a9684756bec6942209ba84329b882d2c9b9287710dbac1269e7c01474ddba5000000001419eca1f3c4ff0a8fb1de3b1bf8d2b875ff49f1efbee816d6635d4ce94f0c5344ebfd68092abecee6e19b4badd6467247c7fa1ab6b8325ba0960337d290545a71be6201d09e5f876468ab32f7c396cd097285139d6c5ee94af37dab2f1fdcdafb7e677f88fd1f41e368ee7dc6c40b1673bac55f5c3440a5bba5c0ebde02ec6a5f7b320841d0bf6b79393eb5195eb39fcde46b9b08cc5e2e3645de0a77603bbdd4011d67c691f4664eee5d25165ada9751678cf7d38c6309b5f457474e81258d68c076ab388761a6d036ead2a51511f5e8657e5038af1632dc7e1e9888d4651542e0e1df8b8314492554b2832f2d7b764d2d52ef2e2569caf83dc1e6c4", @ANYRESOCT, @ANYRES32=0x0], 0x1) 04:31:45 executing program 2: mkdirat(0xffffffffffffff9c, &(0x7f0000002040)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x1f, 0x0, 0xeea390}}, 0x50) mkdirat(0xffffffffffffffff, &(0x7f0000000000)='./file0\x00', 0x8) [ 730.072122][T21925] loop1: detected capacity change from 0 to 2048 [ 730.104385][T21925] EXT4-fs (loop1): couldn't mount as ext3 due to feature incompatibilities [ 730.126973][T21927] fuse: Bad value for 'fd' 04:31:45 executing program 5: mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) (async) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) preadv(r0, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) (async) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) (async) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) (async, rerun: 64) renameat2(r0, &(0x7f0000000400)='./file1\x00', r1, &(0x7f0000000440)='./file0\x00', 0x5) (rerun: 64) r2 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x0, 0x0) mknodat(r2, &(0x7f00000003c0)='./file0\x00', 0x0, 0x0) (async) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) symlinkat(&(0x7f0000000180)='./bus\x00', r2, &(0x7f0000000240)='./bus\x00') (async) mkdirat(0xffffffffffffff9c, &(0x7f00000000c0)='./bus\x00', 0x0) (async, rerun: 32) ioctl$VFAT_IOCTL_READDIR_BOTH(r2, 0x82307201, &(0x7f0000000480)=[{0x0, 0x0, 0x100}, {0x0, 0x0, 0x100}]) (rerun: 32) mount$overlay(0x0, &(0x7f0000000040)='./bus\x00', &(0x7f00000002c0), 0x0, &(0x7f0000000080)=ANY=[@ANYBLOB="776f726b6469723d2e2f66696c65312c6c6f776572a3647c8a3cd88ba06c65302c75707065010069723d2e2f6275732c696ee465783d6f6e"]) linkat(r2, &(0x7f0000000280)='./bus\x00', r2, &(0x7f0000000300)='./file1\x00', 0x0) (async) chdir(&(0x7f0000000140)='./bus\x00') (async) lchown(&(0x7f0000000340)='./bus\x00', 0x0, 0x0) (async) unlinkat(r2, &(0x7f0000000380)='./file1\x00', 0x0) r3 = openat(0xffffffffffffff9c, &(0x7f0000000040)='.\x00', 0x40200, 0x10) renameat2(r3, &(0x7f00000001c0)='./file0\x00', r3, &(0x7f0000000200)='./bus\x00', 0x0) 04:31:45 executing program 2: mkdirat(0xffffffffffffff9c, &(0x7f0000002040)='./file0\x00', 0x0) (async) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) (async, rerun: 32) read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) (rerun: 32) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x1f, 0x0, 0xeea390}}, 0x50) (async, rerun: 64) mkdirat(0xffffffffffffffff, &(0x7f0000000000)='./file0\x00', 0x8) (rerun: 64) 04:31:45 executing program 1: syz_mount_image$ext4(&(0x7f0000000000)='ext3\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x17, &(0x7f0000000200)=[{&(0x7f0000011840)='\x00\x00', 0x2, 0x3}, {&(0x7f0000000540)=' \x00\x00', 0x3, 0x5}, {&(0x7f0000000140)='\x00\x00\x00\x00\x00\b\x00'/24, 0x18, 0x8}, {&(0x7f0000011860)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x20}, {&(0x7f0000000800)="200000000002000019000000900100000f000000000000000100000005000000000004ddff3f000020000000731f1f63731f1f630100ffff53ef010001000000721f1f635b8e281a0000000001000000000000000b0000000001000004000000000000002b0200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e393332393635373533000000000000f1da552c8028bc0500"/200, 0xc8, 0x400}, {&(0x7f0000000040)="000000000000000000000000bfd7fbde2cd74131b8ed5eef968344d001004000160000721f1f630000000011fc53fe991700000000000000000000000000000000c35269cf8f2a671042ff013d116f6efc93ca9a8b54b3", 0x57, 0x4e0}, {&(0x7f0000000400)="00000000000000000000000000000000000000000000000000000000200020000100000000000500400000000000000000000000000000004300000000000000", 0x40, 0x540}, {&(0x7f0000000580)="00000000000000000100000000000000000000000000ba000000000000000000bd43531db7b879f8d846c247e9737cd84ec87d3dc6b85ddf186130dbd3b3a913ffde7d82a1115ce7e3b3792203ea5aa5077b62c99a1f46a3dee2e4f3252f03cb6a280731c3cc7b1a1f3d713befe483c0538a1ed27cac4414257a87767a9eb6750a72d822478a42b549d54b6e787384ad0f36e4dfe9004482a0020ab7cc3b620cd21030b25d039a1298154a5f83a3784179a74bfa3b4751d819fc925bf023eff2b06205e2a7951344f2377880a1ae8312559430c6b1646b39910969ef6a847138ff4338888cc3759f61c3fc76685f0a8f63b1e45f6bad2b8eee32020559b06f5e38f9386e9169e41c7583febea5c13374d1224423ebbb7f7854b6dd8ea50154abe5cd0c6cdb052596ff1d6f967e23fb2158ca80480c2fe98258d54fa50c000000000000539230fd17e6bac57bdc53cdb2be", 0x151, 0x640}, {&(0x7f0000010160)="0500000003000000040000003d1fd6c49fc07094e4ca1270a419000f00030004", 0x20, 0x800}, {&(0x7f00000111a0)="ed41000000080000721f1f63731f1f63731f1f6300000000000004004000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x2100}, {&(0x7f00000111e0)="2000000004ed65de04ed65de00000000721f1f6300"/32, 0x20, 0x2183}, {&(0x7f0000000440)="8081000000601020721f1f09000000000000005763000000000000010040000000000000d5129c6e0bf1fb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000100000000000000000000000000000000000000000000000000000020000000000000000000000000000000721f1f630000000000001f00000000", 0xa7, 0x2600}, {&(0x7f00000112a0)="c0410000954ddfaf721f1f63721f0f63721f1f630000007bf10002004000000000000800000000000af301000400000000000000000000000700000020000000", 0x40, 0x2a00}, {&(0x7f0000011320)="ed410000d9aebd6c1d6ae032a358af34f5c0087a2809743b731f1f63731f1f630000000000000200000000000000001003000000020000000d0000001000050166696c65300000000e0000002800050766696c65310000000000000000000000000000000000000000000000000000006fc3a7c40000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040700"/192, 0xc0, 0x2b00}, {&(0x7f0000011480)="ffa1000026000000731f1f63731f1f63731f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3933323936353735332f66696c65302f66696c6530000000000000000000000000000000000000000000009d621b1c0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000", 0xa0, 0x2d00}, {&(0x7f0000000900)="ed81000064000000731f1f63731f1f63731f1f63000000000000010000000000000000100100000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c2872a1fd0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040734000000000028000000000000006461746100000000000000000000000000000000000000000000000000000000000000006c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572738f459ccd32a75d274cf00e94454abb30ab1a87c0e0880e0655a931b6dd21dffe54e4cc679115210adaa957fa0e1ecc2cc40a302e7bdd2e7a2ab8333334e92701bacc2d0570fee62aeecba803b62bae11370aa20e0dd6d2886255f0c6ea16c4f08c8022ddf6b44c52da27e9835a292ceb0b845f6fd19716f8bda9ad33905809b4fdd98df742b1fcbe8471666df5287de01a8e0ba240c155ccd6ff415c59c2cf4aa22013fa7f44b6aa32378ba7e61d63942e7f9a92a7fe302259d7fdc38edf2cc4affa745ad84461b951dedc0c2b72092a412b31124d8ef4a33464ce8f8a52f7760b768b28a3597b141b21b90ca59af905131e669e15578df797c034042ca2d4decaff82313ef830db4a5b9a759a41a596a1", 0x211, 0x3000}, {&(0x7f00000117c0)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c6533000000110000009407090166696c652e636f6c64000000", 0x80, 0x8000}, {&(0x7f00000118a0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x11800}, {&(0x7f00000118c0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x12000}, {&(0x7f00000001c0)="00000000000800000000000000000000000000000000000000000000000000009609fa720b14f5918d9ed8c0d23d910262df49375c63d727224cd86f2c8cc710", 0x40, 0x12800}, {&(0x7f00000000c0)="00000000000800f5c76edf2608f38ca97255a3495a00"/46, 0x2e, 0x13000}, {&(0x7f0000011920)="504d4d00504d4dff731f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d00000000000000000000000000000000000000000000000000006c6f6f7032310075782f746573742f73797a5f6d6f756e745f696d6167655f650500"/112, 0x70, 0x20000}, {&(0x7f0000002040)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000b6ca6b810358486c77e520ca5de40683779b42a74ab147756edd375dd121d13da0952339cefa13785bb2c0bacd154ae9824c8a86087373998169196169cb2b08455f47e12a239e50f7ffc836c7a28fa539a97027a07de105d240dd607a0e2b694ce476ce05aea1baeb6ae3132a678f324e9a2f09933022b462095731ebe57344f1", 0x4a1, 0x28000}], 0x0, &(0x7f0000002500)=ANY=[@ANYBLOB="00b30824400d21223433bba32035e2ef9711604edf71b82a8fe52765aad2d7836b1a3ba0706a2dbcd3adf3d38a57682198b853fa4e230125fe79a2c4a7e50ec75460bae8f5acee1959c9550f63773d76ea03ae36b4244835a3f5f544aed5577b0212798accf91ecde8621a9dc5cdfee2760508003ff361f94fc318010089b3532183ea8fc6be3f005afae337349b43c202d6c180a2eee27ed2ad99acc703246b4e35b433911d3cfdb6767dff8c0cc2f91ab6c42ebc2c5272197f36cb798833f97edcb11ddfa31834d602f22fe26d5b2094db8417389935f42d9213023fdd367aa1c38e70b68e44ebf44b3fd67798b083f989ae3a4c3cd6f55f339b9ff82bbc68ee3e549c5e63c09b85229f97849d8b093b9cf175f084f4d1a1097057d59d20eae608993156ff12bff4d9c3fa67cf0000ebf075f462f53b6ff908000000c3b95e3b508d50999603000000000000000515bf522ec94a08990c46311f75c2d6b452829b7dbcaf7745a0b7158d7db8120006583c495455301c782bec88a9684756bec6942209ba84329b882d2c9b9287710dbac1269e7c01474ddba5000000001419eca1f3c4ff0a8fb1de3b1bf8d2b875ff49f1efbee816d6635d4ce94f0c5344ebfd68092abecee6e19b4badd6467247c7fa1ab6b8325ba0960337d290545a71be6201d09e5f876468ab32f7c396cd097285139d6c5ee94af37dab2f1fdcdafb7e677f88fd1f41e368ee7dc6c40b1673bac55f5c3440a5bba5c0ebde02ec6a5f7b320841d0bf6b79393eb5195eb39fcde46b9b08cc5e2e3645de0a77603bbdd4011d67c691f4664eee5d25165ada9751678cf7d38c6309b5f457474e81258d68c076ab388761a6d036ead2a51511f5e8657e5038af1632dc7e1e9888d4651542e0e1df8b8314492554b2832f2d7b764d2d52ef2e2569caf83dc1e6c4", @ANYRESOCT, @ANYRES32=0x0], 0x1) [ 730.236990][T21932] fuse: Bad value for 'fd' [ 730.270602][T21932] fuse: Bad value for 'fd' [ 730.284987][T21936] loop1: detected capacity change from 0 to 2048 04:31:45 executing program 4: [ 730.316356][T21932] fuse: Bad value for 'fd' [ 730.325357][T21932] fuse: Bad value for 'fd' r0 = syz_mount_image$ntfs3(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4045ff, 0x15, &(0x7f0000000bc0)=[{&(0x7f0000010000)="eb52904e5446532020202000020800000000000000f8000000000000000000000000000080008000ff0f0000000000000400000000000000ff00000000000000f600000001", 0x45}, {&(0x7f00000001c0)="813e37f8f9bc53b8d2190168e4d3d1b4f63c4b993e82f1dfe7354fcd09930a92c992e6966329bbc621822681bb9fd0f4af588ab5629a7d33e299719b300fdac1ba10427c39a282e682073ec94414870644efe15b", 0x54, 0x2000}, {&(0x7f0000010120)="46494c453000030000000000000000000100010038000100980100000004000000000000000000000400000000000000030000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000000000600000000000000040324004d00460054000000000000008000000048000000010040000000010000000000000000003e00000000000000400000000000000000f003000000000000f003000000000000f0030000000000113f040000000000b0000000480000000100400000000300000000000000000000000000000000004000000000000000001000000000000020000000000000002000000000000000110102", 0x18b, 0x4000}, {&(0x7f0000000040)="00000000000000000000000000000000000000000000000000000000000003", 0x1f, 0x41e0}, {&(0x7f00000012c0)="00000000000000000000000000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000000000000000000008000000000000001101020000000000ffffffff0000030046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000001000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2b000000000000027bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040100000000000000010000000000000001000000000000000100000001800002101ff23ae27c955ecdc4c411eda9ff9aef80327277a317c6837c3f760c829084956155c6b3bc5a32d760c9b69319ed8322f04ad1c757dd03be5", 0x1e2, 0x43a0}, {&(0x7f00000104c0)="000000000000000000000000000000000000000000000000000000000000020046494c45300003000000000000000000020000e538000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f00000000000000400000000000000000000400000000000000040000000000e10004000000000021400001", 0x16c, 0x47e0}, {&(0x7f0000000080)="000000000000000000a6000000000000000000000000000000000000000002183e0554dcb08c0e703aaec8625c8a028b1926464a8597351517175b9782f5a3f868c5de1db6fa29", 0x47, 0x49e0}, {&(0x7f0000010660)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000040000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c00000018000000000000000000000003010000000000008000000018", 0x1e5, 0x4be0}, {&(0x7f0000000240)="000000000000000000000000000000000000000000000000000000000000040046494c453000030000000000000000000400010038000100c00100000004000000000000000000000400000004000000020000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a00000000000006000000000000000803240041007400740072004400650066000000000000005000000080000000000018000000030064000000180000000100048048000000540000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000000a000000000000000a000000000000110146", 0x1d3, 0x4fe0}, {&(0x7f00000005c0)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000500010038000300000200000004000000000000000000000600000005000000030000000000000010000000480000000000180000000000300000001800000000ab2bd24ec4d801132d87d24ec4d801132d87d24ec4d80100ab2bd24ec4d80126000010000000000000000000000000300000006000000000001800000001004400000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e00000000005000000048000000010040000000020000000000000000000100000000000000400000000000000000200000000000002c100000000000002c10000000000000110243000000000090000000580000000004180000000300380000002000000024004900330030003000000001000000001000000100000010000000280000002800000001000000000000000000000018000000030000000000000000000000a00000005000000001044000000005000000000000000000000000000000000048000000000000000010000000000000001000000000000000100000000000002400490033003000110145", 0x1eb, 0x53e0}, {&(0x7f0000010ca0)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000600010038000100500100000004000000000000000000000300000006000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000002005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d006100700080000000480000000100400000000100000000000000000000000000000000004000000000000000001000000000000040000000000000004000000000000000110147", 0x163, 0x57e0}, {&(0x7f0000011040)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000800010038000100780100000004000000000000000000000400000008000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000003005200000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c0075007300ffff00000000800000001800000000001800000002000000000018000000800000005000000001044000000001000000000000000000fe01000000000000480000000000000000f01f000000000000f01f00000000000000000000000000240042006100640002ff01", 0x18b, 0x5fe0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000900010038000900000300000004000000000000000000000500000009000000030000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000020000000000000000000000000000000000101000000000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000200000000007032400530065006300750072006500800000005000000001044000000002000000000000000000400000000000000048000000000000000010040000000000700104000000000070010400000000002400530044005300114148000000000090000000e00000000004180000000300c00000002000000024005300440048000000000012000000001000000100000010000000b0000000b000000000000000180014000000000030000800000000005124b300010100005124b3000101000080000000000000007c0000004900490018001400000000003000080000000000a0ddde4202010000a0ddde42020100000001000000000000640000004900490018001400000000003000080000000300f01203f800010000f01203f80001000000000000000000007c000000490049000000000000000000100000000200000090000000c80000000004180000000400a800000020000000240053004900490000000000100000000010000001000000100000009800000098000000000000001400140000000000280004000000000000010000f01203f80001000000000000000000007c00000014001400000000002800040000000000010100005124b3000101000080000000000000007c0000001400140000000000280004000000000002010000a0ddde420201000000010000000000006400000000000000000000001000000002", 0x315, 0x63e0}, {&(0x7f0000011520)="000000000000000000000000000000000000000000000000000000000000030046494c453000030000000000000000000a0001003800010098010000000400000000000000000000040000000a000000020000000000000010000000600000000000180000000000480000001800000000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80106000000000000000000000000000000000000000001000000000000000000000000000000000000300000006800000000001800000003005000000018000100050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000002000000000000000200000000000600000000000000070324005500700043006100730065008000000048000000010040000000010000000000000000001f000000000000004000000000000000000002000000000000000200000000000000020000000000212089", 0x163, 0x67e0}, {&(0x7f0000013b20)="d000000020000000000018000000030008000000180000002d0000003c000000e00000005800000000001800000004003c000000180000001400000000060400244c585549440000000000001400000000060400244c584749440000000000001400000000060400244c584d4f4400ed8100000000000000ffffffff0000e20046494c452a00030000000000000000000000000030000000380000000004", 0x9e, 0xc380}, {&(0x7f000001aa40)="494e4458280009000000000000000000000000000000000028000000b8060000e80f0000000000000d00d801000000000000000000000000000000000000000004000000000004006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010010000000000000000a000000000000060000000000000008032400410074007400720044006500660000000000010008000000000008006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000803240042006100640043006c007500730000000000070006000000000006006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000040000000000000000600000000000000070324004200690074006d0061007000070000000000070060004c0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010020000000000000002000000000000006000000000000000503240042006f006f00740069006c000b00000000000b006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec40d0000ab2bd24ec4d8010000000000000000000000000000000006000010000000000703240045007800740065006e00640002000000000002006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000004000000000000000400000000000600000000000000080324004c006f006700460069006c006500000000000100000000000000010060004a0000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010070000000000000006c0000000000000600000000000000040324004d004600540000000000000001000000000001006800520000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801001000000000000000100000000000000600000000000000080324004d00460054004d0069007200720000000200000009000000000009006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d801000000000000000000000000000000000600002000000000070324005300650063007500720065000a00000000000a006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000020000000d00000002000000000006000000000000000703240055007000430061007300650003000000000003006000500000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d8010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650005000000000005005800440000000000050000000000050000ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100ab2bd24ec4d80100000000000000000000000000000000060000100000000001032e0000000000200000000000010068005400000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100100000000000006400000000000000200000002d0000000900660069006c0065002e0063006f006c006400000000001b0000000000010060004c0000000000050000000000050073a685d24ec4d80173a685d24ec4d80173a685d24ec4d80173a685d24ec4d80100000000000000000000000000000000200000102d0000000500660069006c0065003000000000001e0000000000010060004c0000000000050000000000050073a685d24ec4d801132d87d24ec4d801132d87d24ec4d80173a685d24ec4d80100100000000000000a0000000000000020000000590000000500660069006c006500310000000d001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c0065003200000000001f0000000000010060004c00000000000500000000000500132d87d24ec4d801132d87d24ec4d801132d87d24ec4d801132d87d24ec4d80100300000000000002823000000000000200000002d0000000500660069006c00650033000000000000000000000000001000000002", 0x6cd, 0x45000}, {&(0x7f000001b200)="10", 0x1, 0x46080}, {&(0x7f00000007c0)="f7ffffffffff6c85507e207950cbb02575507700fffb9a55fb8d253755da1453094bdf12f9dea56eca6103d9a0c7c7f10482f7433c1b819f5bfc850c99b3f9d627a7b397fdf4f0303f271f526a9a7890a9a155af4ff2f497feffaec1f6fc8abc8717cb83a803b225e2e5497563b268a3beb1f964000000000000002061dff0281b6dc6572ed135b36f9c052504062fc60097e40f9be0fb831dad3a996176570845730000000000000000000095fe28614719bf7f7be9f18fa6a54f848514c8763ad7e6e41e09dd208a22b79d97053f495ba598be066ec1de22bd9e79851d13117d3e8b8248ab4673f6b8f473bf4c1f5d730c7ededcd9705ef3dd745e531edb04fc1b861c2cb57e107c2eaa0a2ccbc67ba70b9af536564c93b73ab6cfafc58d339738640af0789756372a0b0d64ba25d4d1a703738459ff5a492de9f3ddce43b48b5e8d1228cb0600000000000000", 0x14e, 0x46ffe}, {&(0x7f000001b660)="f01203f80001000000000000000000007c0000000100048048000000580000000000000014000000020034000200000000001400890012000101000000000005120000000000180089001200010200000000000520000000200200000102000000000005200000002002000001020000000000052000000020020000000000005124b30001010000007c00000001000480480000005800000000000000140000000200340002000000000014009f111200010100000000000512000000000018009f01120001020080000000052000000020020000010200000000000520000000200200000102000000000005200000002002000000000000a0ddde4202010000000100000000000064000000010004803000000040000000000000001400000002001c000100000000031400ff011f00010100000000000100000000010200000000000520000000200200000102000000000005200000002002", 0x15b, 0x48000}, {&(0x7f000003c0c0)="0000000000000000000000000000000000000000000000000000000000000400ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3fe5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffebdf0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x20024, 0xfffe0}, {&(0x7f00000104a0)="00000000000000270000000000000000000000000000000000000000000002", 0x1f, 0x4045de}], 0x2, &(0x7f0000003580)=ANY=[], 0x1) sync() r1 = dup(r0) (async, rerun: 32) sync() (async, rerun: 32) r2 = open(&(0x7f0000000a40)='./bus\x00', 0x141a42, 0x0) (async) r3 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) (async) r4 = openat$fuse(0xffffffffffffff9c, &(0x7f0000000100), 0x2, 0x0) mount$fuseblk(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000440)={{'fd', 0x3d, r4}, 0x2c, {'rootmode', 0x3d, 0x2000}, 0x2c, {}, 0x2c, {}, 0x2c, {[{@blksize={'blksize', 0x3d, 0x800}}, {@default_permissions}]}}) ioctl$BTRFS_IOC_SUBVOL_CREATE_V2(r4, 0x50009418, &(0x7f00000014c0)={{r1}, 0x0, 0x2, @inherit={0x78, &(0x7f0000000ec0)={0x0, 0x6, 0x813, 0x401, {0x13, 0x1000, 0x4, 0x5, 0x80000000}, [0x8, 0x3, 0x3, 0x0, 0x6, 0x7f]}}, @name="9d54259130bff30e499f537f4aef530500886fffb6cde398556d8dcb978c17d92d40de7b6c1d71105050b0dc35e67f98c756a66f1833203284a6e5c9b65a2e794aebbf5b60caff6ba0f9ad8e74e25cbae7096b87d87bffa6e7e15a1a142b0dbf85f47916b1304ca50b24c8c480ba6202e6294de53b8c992fefe65956ef1309ee1eba6d87d8c93ce199f723560776d907c3bb1293b96a2e14c8b8eb0abe465fdab9afc969761fb28360413813d5f416b0ce159328d9cb9bf1f1bf5671632a34a3c6e66095cc3e57f1b585c31dbc6a08cd626f958b5bffdd3f74da27c91c76544995df5613ce5c987e7d518d044313b3b3bc0ce0e85faafac2296119e401595f06ab998073a04a060a778b28961dae5ee6591ac7c61ec9481918e5d5d9da4de801cb125b786d2bb1c6be43b8783067d6e331975b6788621f52acbb644fce9e92dcd28cb5329cd9d762f852bf5efd263ee611133f5ca10802e9140042766a871e299e814fca6a1d6ce63fd49e70c5fb453ba16f25c12fb08e5659f760b3725367cff649560cbc33eca2381e95e3d8af178977ce9a364beb5e5d4ba7f03085c5231b8a6b9f9ba3a528c673d4779660ee6405543c71a877c5d3a92b17e5db64e38152931d08398d6a4bc9440c1d6b8e92ec92050797c3a2e5f59441d0c859aee31af2a2009402dd0d2b3b7963b4030002c3163956b460c5a2cacae07a0a1313c950a26525a9ed019da654197f86c5a0a295e944d85a21fec7e2b4f58ee82ab584e342dbbe25a538a7db99cbe7fec45799cce1ad80b4657ab21f96d3988c4cbf6528feca773e429562b73f2885f824bc0f4c459b1e5081ecc6f4f29354ef0d63e43adc3a37a56f1b95174b89677f8d65bd8c1eb10e8105974eb5c253cda036fddcd5727c7fea91dfa0c0dfa70ad3969af2eb2e269db86f3fdc6670491ee84b3d062861753729fb004a56ff56f9366512e2800b25f5f37817a34b10a8cdee8cc26dade9face5323d8c46adecdf3db6595c7e6687ce00344c5269a3bb09d620d7e98800a4c738e6f8cdfc68e8b6427d0d087eadeadb4934e6c0c21f3f4656d734a60dc7dc503c02b7f77252b0c188ddf072a791fb7f94e82b89c8e971470f0e9f0d5465bd0a46e266055b89839b8aba495bd5146b2714a80a516e65074f3b01b3aabe361c0039382c213319de7619dd0607219e40baa5f9eec9025e1a1416af97d1b16f7df1b92f0ccf3d16b7ebbea0dbbc1ca94f701fec33864ae2f315f415adb4ebf58310c86ee31481473060c45d09dd4bf060ad8e773f4fef36d9a0b59a1342ccebebbdbd05548173e5ec3087de5727cec3a75b494cb0302346aff996fa0ed310b1f8c74bf5d95848a8be4463eb38807a94f591f8f83d3671ac4d52ea74db9fc96ddb1d3ecbf77b2c8d25945813bbd9522f8d9e7a9da5beb3c12367c95ac96f3a374494d5037f394d294c76cfccd62ae6531b937ab37f052205142f1f3f2c3897d0c3cbf32dbed0466d2a431db7f7bdd684b626768110c55eafa6802125a88afaff4464673278dd05160b329f7b11dfec21cb8756358248ddd1117f275b099b1157f0ab597613b92e53f6027060b9b12055acf393d90b7aea7c6fa66e6a0919f03a6531ca7376b14fd7a162f2398f3a72f6cd8e67201a150dee70c92590536c5d28a7d491a7cd5ab3e1cf3932f15b1807269dd0b5dbc1b3c0ad1b2b215e0c9ad5926711a24b0601a4ebdd27f26d55d7a50bd2d0e7a57ac4a47de58847c3b905e7a25ce44b16f249446c2cea9c44140a52bbc7a69422c9bde2211f14291bf41e6f7973003e2a924b2eb930c6ce2a78f16fec96a3cc567da3ea47b62b5f8be3b0f975f000d5a84fb5a31ee451e5689b9a9f1f9ed3f03f801873f1670063f5917fbe7b4bff1d7f5f0d3e4765f8fd3e2e2738e5da9d994df33afc345c6219d4111fa7b871f78a0e3d04ab9ea29a5d17cdb13d0cc78583850fec92af9af5110f7e0e16dd5ff3d609de67046e07fa60b7b5ee3e5b5179d9c4c4d5164726ec74b5e44d609f06f6c683514d2edc649a962b9784fa9de34dde7070dfb8cdf5d5e8dac30c87851856ffc2aafeca8898d9dc0d1a19442502870dd5c140e4a7f1c14d901231cd281cab4fcaba0c0be4dea9e54190f506485fdb5b7a56d1701e0cd274bf96e0e63e7984abe8a44da3de5196e27033c2e206c4cc4cee6ac581dea2c7b0ccfd99a368b3e2a9a5beb64ca88c1a16981c5e45ff17f90902eeb161e061ded6b10865086a3ccdaff7babca5a995cf242fcef39f4c19c68cb33e12de51bf2f43c69d686e8d7abf910877406438bb1c2eeffef762c35bfcbb09036f19cfcdb1d979505581f0c8cab342555659cce2b8ad08bd4482dd03d674f6cf3d06bafe39100932b0ed72cfb8ac52a1d9fb2189b6578685d06f3c165d3c58dc2f2e304b8be5afc6a8dcfb493cc3f229af23aed06646928bf3623478ac200b4d856b3a3f0733e5170a53a956cd0a74971128961af40accca95388ab683cb69dfb7fa7cae043a48bdfe2dae2ce18328c51ab34f574fd3cfc7ae07840f3f607dac74eacef982f4ef0b19555928670742e01fb16ef6953516a4929586399b88246a63342230c3edcfadf400a2e3530ffb4c231d8edafe12eacb5b20c010d0e069b5acddc4bdbedb283e2e6d124c47e12f0e5ccc0f187d49ccc80d44f53147161ebc61881a641aa802a0f87d62c421a4fabeb67e0e21a32a6513ff7510d4c90a435ac957c0dd56ae4e887bcfdecc1145d3f3fd846ca3fb673e307b96c8106906af9d9e1e5783939a78963d88e123a05b795d87bdc0da98a3b350f3a5a470dcb1d3eecc4ebea3e165c4a0a2c0c2285ea60e6241f373249fbef9c35565b5133091df59ad584f728fa9ff1a2b244f818d172cb70e946f17443fd1ddb88c00fbfb6203f88de8b925301aa6dc4f232fdb0ef20b6c770d7398d5901f084f4e57e0264cd883d4b7b3204425575861caa22189664230664802dc26158ec4a44c508e4ecd66dccc412a614fadb9cba1899a54bcc994a7697b3f6b903f1eeb203521de89265bf4802b6ed6d94a37567b6608d7dafcc4c4f90a14347aa2c460f6e7856bcd2483ac2096dfdcf86422da1c69a1ee74b0c4f00072fd8ff1767d3217b7d9a558d483e6c24f338be7b1f4969ef91177a1617de001d6c973b283897008f0d4edeea96ed877577b82a4120418d2f47e6f341f173a3889317740fa2309338fc498ad55654b68fce1ac34a8f1bab0d8257dcf8333a944dee205ca063fdf89573a9ccdd5f34bd54edffb0ce3f67abaa3d54dcffd8ba32c3cb91f7bd2a69a4e73abdc0b0a3f90d7a13c8adcbab7196bf89524eaaad3e9ac6ad2a73b00ffec90fc7125fce345fa2ae2f607166ec37cf252693201679271800b986a351f7557d33598d9b52a6609922874c2508f3a2830795d98e5dc167ba5ef22040befeed9ebf1afa4500f5728091b3ad8224a50b86199cae87bb860a6c9af61ddffe32f7dfaec7a72dede6661ddc520bc5b19b49b9f3a04119677d2d0a2d167b0d5b47a01eb842a589db02def681c3ad41bb52471ed6bc50682d968155675891ead1925f38df3d937797779e092095698158f72aed9125be5ee714952cfc5a0dd0362d97d4178e88e747f20c1b79c52759032ac6d586a8aeaf847337b09a61968aeb034fa205f24b20f93dc47f1ead0aa853073596b00ac0a72096c81845ad5dc49c68e0c8f110bd5b6b9f48141fbdd52513a2b1b00d08dfe4d199a449e99fa4a46e84c8c09035e64a40560106a4920c884dbebc48af30097cbb096dd0705c14a527f978966985983d5be5feb33591f6639633850949e13390aa23fcd700be760fdb10ef4f4b22809a5d2852ce7f410b18ba9aed1079531374c6385cfed1d20c0eb79f4d4c0c1188d47e27c530c11a830fb1d0af567e46c0555528516e97c50b586d0162b6972c7822b068588bc36427182dfe3425d3fd24de83e677a538f89580e92b19a56a2b7a4ba62581ba20351889f0809786662f089fff25f22a8810014f919a2a56e3d586994571faad28528bd7aa2c917fe9ece58c126de14d123521194b849a6d92f99495fe754c58e76070a853b714ed4a48edb68ea63395023f1a7689109a4724b7d5bd430657f836e84f72e3d62f72fee411e522fb88c4d13689cab2b763a4826cf1ba20b417e8e43909e050988f3720bcd442eb9980c5606004a77294fc95d15c4101c50ac6ab076130dcfc13df1575df4397138541528806e55c0f1018206a06ef661a27d17f851df81502592355e2e59fe595e5e12422e25a420e9e6f6e71798bc14ac8a8e32245482ffd79887c5245b434a8bbd5f382e043254a25dee2ed7b2b11c5ea0453f744be471c32e50c46ac44e2c9d42faed09b4374d1909e4fc90cb8e4a1dd1c74ed3652bca2d9b90112333db42fc7c66105ba3d5d6a096570bc7c647d03b07601e37cb77a1175712c9251587caa94a149b2f530a7d6eb8c2b7bd33034a89bc1ad5b29991ea150e521f0d36659307ab6f25acd723b763378356549050a23e77aa771dcdeddd1e74d13ae43141250e8cd5c9541fda64931618148dd183fe234ad9f833586174924450a9eb140129b6a53af4bab059e61c4d36f4a5c2984ed158be6e5958e321bcc58c7517483aa6f88f842db99c31f0e7af08dda7a23facb949817b61945f17593a8b84fa40a36e447a0a9a298552340edc8d49ed3e0115dfa8954358df8fec03735573600eff24a22e8d525045375e7697ff11dcf80c3098f04f1c954abf44480e71d958a610d0df34cb439f88ec0be048f512e8b56ed1d885289c62dd26a5c9e2f396ee15be8647b55aefa78fca0a62a1bdc570d9cfea12c4fc17ecb7e21276d71f25a84732f5a9ac549be5c792bb9cba6c9f6776caccb2a28de44e6a41c6807b361224bd5177704358ddc93f62a616c54e00d43d813879d40b5bc06e9515e5d1eabc93594a7e515c9b0df9dac0f27e46c6ac1736e8318f36389979b1de9749137d2545b414c7f76d95d1c6f5f40ea7e70db34422ea35f8771dd7be57a14b79eb1114aaebd0f944b59f878bac0b8857229791490a6cf40aaf2a70ad27551361f023eb3e16af3979f4d115b1ae9080ed857a05e25660a191ba16df31d1955cf0bbe61d7bcb416a9ebb326d32496ba93b3ee5896214bacd6b5d66ffa82288c3a4681e297e2bffea8f27bd46a0a531c8f3a811db599f220d268cf4df3b9bf18d38b3761889cf065d3d1db205dc23f50b1c6bd3bff1269150c760eb38011191c0573cdb8fd332c9b74928c2e9882430f26ce7870de87c9d9c8ee061809930d079fd398e73165bf83a828e6f2aaedadbf3ceb899a7ff96a3c42a7c325da79bc4d5f0d055d3d28cd9efecee5bd560ad6941dedc79c1b5a666533fa1d4b39fa4c302737911e1e49547f8c2de4061e788cc445181ff9ef62ee9f4342ebdc2efed20adccb7cc72b55a34139935a3e531071d7150a8f4c9bdd655809228533a6e94c04d466a0a814e1d0d693125d7d07b63d28cfc09899dcfab780aa4203694018150c4e3c6c3efca0572ff3765e79084fa5687a031b1fb577f41cf93247b06163081453c592b81da58b3d42ba3df452462ea782527d54300960faf4d7c3a47409b683d098e353c560207608592a48ac0fd1d72194c4fc4453214923c61c525c6aec9fad5607e651396f2d551e9c00910634"}) (async) sendfile(r2, r3, 0x0, 0x80001d00c0d0) (async) syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x100000, 0x28, &(0x7f0000000200)=[{&(0x7f0000000180)="040002008b004e", 0x7, 0x1}, {&(0x7f0000011900)="0700020035000100927f3000e30700000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0x8}, {&(0x7f00000119e0)="002a4c696e757820554446465300000000000000000000000405000000000000", 0x20, 0xff}, {&(0x7f0000010000)="0042454130310100"/32, 0x20, 0x8000}, {&(0x7f0000000ac0)="004e535230320100000000000000000000000000000000000000000000000000e68527d15138f260a3fd8f97b67ecd04dd1a83b427f95fe92bf9a2b3ec4cb8e8f3b7f4ac1174bc2658169baf625a246a0f22dafce1b6179e25252a5239bf7bf5a5e2bd290f71bc93cbb456a31d8f792794becccbda497e0c65b2", 0x7a, 0x8800}, {&(0x7f0000010060)="010002001d0001001aaef001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xc000}, {&(0x7f00000100e0)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c696e7578205544464653000000000000000000000004050000", 0xe0, 0xc0c0}, {&(0x7f00000101c0)="000000000000000001000000000000000000000000000000000000000000000006000200660001006ba8e8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000", 0x80, 0xc1e0}, {&(0x7f0000000b40)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200001000000000000000000000004000000001000000002a4c696e75782055444646530000000000000000000000040500"/128, 0x80, 0xc2c0}, {&(0x7f00000102c0)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f007000000000000000000000000000000000000050002007e000100879cf001620000000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xc3a0}, {&(0x7f0000000140)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xc4a0}, {&(0x7f00000103c0)="07000200ae000100927f3000630000000400000005000000002600004d000000001600007500000000e0000090000000001e00000101000000140000f5070000", 0x40, 0xc600}, {&(0x7f0000010480)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xc8e4}, {&(0x7f0000000080)="002a4c696e75782089bc1a03ef7eb9554439465300000000000000000000000405000000000000", 0x27, 0xc95d}, {&(0x7f00000104c0)="0800020061e400000000f0016500"/32, 0x20, 0xc9ff}, {&(0x7f00000104e0)="000002009100010021d4280170000000002a5544462053706172696e67205461626c65000000000050010405000000002000000000000000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffffb0020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff00400"/320, 0x140, 0xe000}, {&(0x7f0000010620)="09000200d70001000acb7600800000000010e607090c0c00355f4d010100000000000000000000001800000000000000000000000000000000000000000000000000000000000000010000002e000000b0020000d0020000002a4c696e757820554446465300000000000000000000000405000000000000060000000200000050015001010200"/160, 0xa0, 0x10000}, {&(0x7f00000106c0)="080002007d0001000000f0018100"/32, 0x20, 0x10201}, {&(0x7f00000106e0)="020002002200010076b5f00100010000002000006000000000200000e0070000", 0x20, 0x20000}, {&(0x7f0000010700)="08020200f5000100964b080000000000d00200005a000000fefeff000000eafeffffffffffffffffff1bd90000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0500ffffffff00"/118, 0x76, 0xa2000}, {&(0x7f0000010780)="0001020037000100bb77f001100000000010e607090c0c00354c12560300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e757855444600000000000000", 0x80, 0xa4000}, {&(0x7f0000010800)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000200000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001000000000000", 0xe0, 0xa40e0}, {&(0x7f00000108e0)="050102007c000100e5c6a8002000000000000000040000000100000400000000000000000000000000000000a53c00000200000000000000440100000000000001000000000000000010e607090c0c00354c12560010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000000000000000000000000000008000000440100003000"/192, 0xc0, 0xa6000}, {&(0x7f00000109a0)="05010200e4000100009920012100000000000000040000000100000400000000000003000000000000000000a57c00000100000000000000800000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001100000000000000000000008000000001010200b10001001b5818002100000001000a000002000020000000000000000000000000000000010102004b00010059b01c0021000000010000060002000022000000000000001200000000000866696c65300101020078000100c1751c0021000000010000060002000026000000000000001300000000000866696c653100"/320, 0x140, 0xa6200}, {&(0x7f0000010ae0)="050102003a00010060ffb0002200000000000000040000000100000500000000000001000000000000000000a57c000001000000000000001a0400000000000003000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000120000000000000000000000100000001a0400002300"/192, 0xc0, 0xa6400}, {&(0x7f0000010ba0)='syzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkallersyzkal\x00\x00\x00\x00\x00\x00', 0x420, 0xa6600}, {&(0x7f0000000dc0)="05010200c3000100b831aa00270000000000000004000000010000050000002f545fd99c54d30d6f078579d6c681db00000003000000000000000000a57c000001000000000000000a00000000000000000000000000edff0d3ea6eb7400c5041edbd66826ff0fe607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e5953dfffffff00000000000000f7ffffff07000000c2d8a400002a4c696e757820554446465300000000000000000000001400000000000000000000000a", 0xc5, 0xa6e00}, {&(0x7f0000011180)="05010200000001009d72c0002800000000000000040000000100000500000000000001000000000000000000a57c00000200000000000000282300000000000012000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e75782055444646530000000000000000000000040500000000000015000000000000000000000020000000000e0000290000000000000000000000281500003100"/224, 0xe0, 0xa7000}, {&(0x7f0000000640)="01010200c00001001b5818003000000001000a00000200002000000000000000000000000000000001010200c40001007ae92c003000000001000116000200004000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200e4000100f0a31c00300000000100020600020000210000000d0000001100000000000866696c653001010200d200010039481c0030000000010000060002000027000000000000001400000000000866696c6531010102002e0001008f4e1c0030000000010000060002000028000000000000001500000000000866696c653201010200dd000100315b1c0030000000010000060002000028000000000000001600000000000866696c653301010200e7000100f79b2000300000000100000a000200003c000000000000001700000000000866696c652e636f6c6400"/352, 0x160, 0xa8000}, {&(0x7f00000113c0)="05010200c90001004b3404013c00000000000000040000000100000500000000000003000000000000000000a57c000001000000640000000000000000000000000000000010e607090c0c00355e59530010e607090c0c00355e59530010e607090c0c00355e59530100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001700000000000000000000006400000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6cff7273797a6b616c6c657273797a6b616c6c65727300"/284, 0x11c, 0xa9800}, {&(0x7f00000114e0)="0501020052000100beaba0004000000000000000040000000100000500000000000000040000000000000000a57c00000100000000000000000000000000000000000000000000000010e607090c0c00354c12560010e607090c0c00354c12560010e607090c0c00354c12560100000000000000000000000000000000000000002a4c696e7578205544464653000000000000000000000004050000000000001000"/192, 0xc0, 0xaa000}, {&(0x7f00000115a0)="01000200a40001001aaef001e00700000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010002000300010000000100000008313233343536373831323334353637384c696e757855444600"/128, 0x80, 0xfc000}, {&(0x7f0000000bc0)="0000000000000019004f53544121436f6d7072657373656420556e69636f646500000000000000000000000000000200000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c01000100206d6b756466667320322e33000000000000000000000000000010e607090c0c00354c1256002a4c6900000000000000040500"/224, 0xe0, 0xfc0c0}, {&(0x7f00000007c0)="190000000000000000000000000000000000000900020002002a4f5354412055444620436f6d706c69616e740000000050010000000000000002000010000000000001000000000000005025f74000000001000000002a4c696e7578205544464653000000000000000000000004050000000000000000000000000000000000c0a19d095286d8962c9d3c49a1e6ab5fc1a748d4e37345d5b16d7b7740cc1a10cc570749d073ac380d464879a0c80c6c9e6b55ae44c566b9a7ce5a7f4580dcf46b0e74a9d79c031d4eb80d929765ef282d4e67a8ffbc846db8591b4eb0", 0xdd, 0xfc2c0}, {&(0x7f0000000980)="00000000000000000000000000000000002000008000000002400000002a554446205370617261626c6520506172746974696f6e500104050000000001000000200002003801000070000000f0070000000000000000000000000000000000000500020005000100879cf001e20700000300000001000000002b4e53523032000000000000000000000000000000000000000000000000000000000000000000000200"/192, 0xc0, 0xfc3a0}, {&(0x7f00000118c0)="0000000000000000000000000000000000000000000000000400000010050000d0020000002a4c696e7578205544464653000000000000000000000004050000", 0x40, 0xfc4a3}, {&(0x7f00000119c0)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t\x00'/32, 0x20, 0xfc8e0}, {&(0x7f0000011a00)="08000200e80001000000f001e50700"/32, 0x20, 0xfca00}, {&(0x7f0000001100)="000002001800010021d42801f0070000002a5544462053706172696e67205461626c65000000000050010405000000002000ffffffff10010000ffffffff30010000ffffffff50010000ffffffff70010000ffffffff90010000ffffffffb0010000ffffffffd0010000fffffffff0010000ffffffff10020000ffffffff30020000ffffffff50020000ffffffff70020000ffffffff90020000ffffffff80020000ffffffffd0020000fffffffff0020000ffffffff10030000ffffffff30030000ffffffff50030000ffffffff70030000ffffffff90030000ffffffffb0030000ffffffffd0030000fffffffff0030000ffffffff10040000ffffffff30040000ffffffff50040000ffffffff70040000ffffffff90040000ffffffffb0040000ffffffffd0040000fffffffff004000000000000000000000000000000008c58769b598272941536357f7851ad688bfec95b2f6d5a182b2d113cb5590d413bf2b9ca14ed8fd0e9125b4f6d385dfae4aa0678d4b43c08b96d53cf2120846ef58a6396af12e1243e1898651a13b600d049260b2adb3c3f4e5f64c4d1aed5e362426701", 0x1a4, 0xfe000}, {&(0x7f0000011b60)="020002002700010076b5f001ff070000002000006000000000200000e0070000", 0x20, 0xffe00}], 0x8000, &(0x7f0000001000)=ANY=[@ANYBLOB="756d61736b3d30303030303030303030301130303030303030303331342c616e63686f723d303030e1698e4cffb11aacac2c6221dc340c30303030303030303030303030323034372c73686f727461642c756e686964652c6769643d666f726765742c6c617374626c6f636b3d30303030303030303030303030303030303030372c66696c657365743d30303033303030303016c83030303033323736372c696f636861", @ANYRESDEC=0x0, @ANYBLOB=',noadinicb,\x00'], 0x1) (async, rerun: 32) sync() (rerun: 32) sync() (async) creat(&(0x7f0000000040)='./bus\x00', 0x0) creat(&(0x7f0000000940)='./bus\x00', 0x20) (async, rerun: 64) sync() (rerun: 64) 04:31:45 executing program 5: mkdirat(0xffffffffffffff9c, &(0x7f0000000000)='./file0\x00', 0x0) (async) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) write$binfmt_script(r0, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) (async) preadv(r0, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) (async) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='blkio.throttle.io_serviced_recursive\x00', 0x275a, 0x0) write$binfmt_script(r1, &(0x7f00000001c0)=ANY=[@ANYRES64, @ANYBLOB], 0x208e24b) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffff23}], 0x1, 0x0, 0x0) renameat2(r0, &(0x7f0000000400)='./file1\x00', r1, &(0x7f0000000440)='./file0\x00', 0x5) r2 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x0, 0x0) mknodat(r2, &(0x7f00000003c0)='./file0\x00', 0x0, 0x0) mkdirat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x0) (async) symlinkat(&(0x7f0000000180)='./bus\x00', r2, &(0x7f0000000240)='./bus\x00') (async) mkdirat(0xffffffffffffff9c, &(0x7f00000000c0)='./bus\x00', 0x0) (async) ioctl$VFAT_IOCTL_READDIR_BOTH(r2, 0x82307201, &(0x7f0000000480)=[{0x0, 0x0, 0x100}, {0x0, 0x0, 0x100}]) (async) mount$overlay(0x0, &(0x7f0000000040)='./bus\x00', &(0x7f00000002c0), 0x0, &(0x7f0000000080)=ANY=[@ANYBLOB="776f726b6469723d2e2f66696c65312c6c6f776572a3647c8a3cd88ba06c65302c75707065010069723d2e2f6275732c696ee465783d6f6e"]) (async) linkat(r2, &(0x7f0000000280)='./bus\x00', r2, &(0x7f0000000300)='./file1\x00', 0x0) (async) chdir(&(0x7f0000000140)='./bus\x00') (async) lchown(&(0x7f0000000340)='./bus\x00', 0x0, 0x0) (async) unlinkat(r2, &(0x7f0000000380)='./file1\x00', 0x0) (async) r3 = openat(0xffffffffffffff9c, &(0x7f0000000040)='.\x00', 0x40200, 0x10) renameat2(r3, &(0x7f00000001c0)='./file0\x00', r3, &(0x7f0000000200)='./bus\x00', 0x0) [ 730.356561][T21936] EXT4-fs (loop1): couldn't mount as ext3 due to feature incompatibilities [ 730.374146][T21932] fuse: Bad value for 'fd' [ 730.393776][T21932] fuse: Bad value for 'fd' [ 730.414266][T21932] fuse: Bad value for 'fd' 04:31:45 executing program 1: syz_mount_image$ext4(&(0x7f0000000000)='ext3\x00', &(0x7f0000000100)='./file0\x00', 0x100000, 0x17, &(0x7f0000000200)=[{&(0x7f0000011840)='\x00\x00', 0x2, 0x3}, {&(0x7f0000000540)=' \x00\x00', 0x3, 0x5}, {&(0x7f0000000140)='\x00\x00\x00\x00\x00\b\x00'/24, 0x18, 0x8}, {&(0x7f0000011860)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x20}, {&(0x7f0000000800)="200000000002000019000000900100000f000000000000000100000005000000000004ddff3f000020000000731f1f63731f1f630100ffff53ef010001000000721f1f635b8e281a0000000001000000000000000b0000000001000004000000000000002b0200000000000000000000000000000000000073797a6b616c6c6572000000000000002f746d702f73797a2d696d61676567656e393332393635373533000000000000f1da552c8028bc0500"/200, 0xc8, 0x400}, {&(0x7f0000000040)="000000000000000000000000bfd7fbde2cd74131b8ed5eef968344d001004000160000721f1f630000000011fc53fe991700000000000000000000000000000000c35269cf8f2a671042ff013d116f6efc93ca9a8b54b3", 0x57, 0x4e0}, {&(0x7f0000000400)="00000000000000000000000000000000000000000000000000000000200020000100000000000500400000000000000000000000000000004300000000000000", 0x40, 0x540}, {&(0x7f0000000580)="00000000000000000100000000000000000000000000ba000000000000000000bd43531db7b879f8d846c247e9737cd84ec87d3dc6b85ddf186130dbd3b3a913ffde7d82a1115ce7e3b3792203ea5aa5077b62c99a1f46a3dee2e4f3252f03cb6a280731c3cc7b1a1f3d713befe483c0538a1ed27cac4414257a87767a9eb6750a72d822478a42b549d54b6e787384ad0f36e4dfe9004482a0020ab7cc3b620cd21030b25d039a1298154a5f83a3784179a74bfa3b4751d819fc925bf023eff2b06205e2a7951344f2377880a1ae8312559430c6b1646b39910969ef6a847138ff4338888cc3759f61c3fc76685f0a8f63b1e45f6bad2b8eee32020559b06f5e38f9386e9169e41c7583febea5c13374d1224423ebbb7f7854b6dd8ea50154abe5cd0c6cdb052596ff1d6f967e23fb2158ca80480c2fe98258d54fa50c000000000000539230fd17e6bac57bdc53cdb2be", 0x151, 0x640}, {&(0x7f0000010160)="0500000003000000040000003d1fd6c49fc07094e4ca1270a419000f00030004", 0x20, 0x800}, {&(0x7f00000111a0)="ed41000000080000721f1f63731f1f63731f1f6300000000000004004000000000000800050000000af301000400000000000000000000000100000010000000", 0x40, 0x2100}, {&(0x7f00000111e0)="2000000004ed65de04ed65de00000000721f1f6300"/32, 0x20, 0x2183}, {&(0x7f0000000440)="8081000000601020721f1f09000000000000005763000000000000010040000000000000d5129c6e0bf1fb00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030000000000000000100000000000000000000000000000000000000000000000000000020000000000000000000000000000000721f1f630000000000001f00000000", 0xa7, 0x2600}, {&(0x7f00000112a0)="c0410000954ddfaf721f1f63721f0f63721f1f630000007bf10002004000000000000800000000000af301000400000000000000000000000700000020000000", 0x40, 0x2a00}, {&(0x7f0000011320)="ed410000d9aebd6c1d6ae032a358af34f5c0087a2809743b731f1f63731f1f630000000000000200000000000000001003000000020000000d0000001000050166696c65300000000e0000002800050766696c65310000000000000000000000000000000000000000000000000000006fc3a7c40000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040700"/192, 0xc0, 0x2b00}, {&(0x7f0000011480)="ffa1000026000000731f1f63731f1f63731f1f6300000000000001000000000000000000010000002f746d702f73797a2d696d61676567656e3933323936353735332f66696c65302f66696c6530000000000000000000000000000000000000000000009d621b1c0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000", 0xa0, 0x2d00}, {&(0x7f0000000900)="ed81000064000000731f1f63731f1f63731f1f63000000000000010000000000000000100100000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c2872a1fd0000000000000000000000000000000000000000000000002000000004ed65de04ed65de04ed65de731f1f6304ed65de0000000000000000000002ea040734000000000028000000000000006461746100000000000000000000000000000000000000000000000000000000000000006c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572738f459ccd32a75d274cf00e94454abb30ab1a87c0e0880e0655a931b6dd21dffe54e4cc679115210adaa957fa0e1ecc2cc40a302e7bdd2e7a2ab8333334e92701bacc2d0570fee62aeecba803b62bae11370aa20e0dd6d2886255f0c6ea16c4f08c8022ddf6b44c52da27e9835a292ceb0b845f6fd19716f8bda9ad33905809b4fdd98df742b1fcbe8471666df5287de01a8e0ba240c155ccd6ff415c59c2cf4aa22013fa7f44b6aa32378ba7e61d63942e7f9a92a7fe302259d7fdc38edf2cc4affa745ad84461b951dedc0c2b72092a412b31124d8ef4a33464ce8f8a52f7760b768b28a3597b141b21b90ca59af905131e669e15578df797c034042ca2d4decaff82313ef830db4a5b9a759a41a596a1", 0x211, 0x3000}, {&(0x7f00000117c0)="020000000c0001022e000000020000000c0002022e2e00000b00000014000a026c6f73742b666f756e6400000c0000001000050266696c65300000000f0000001000050166696c6531000000100000001000050166696c6532000000100000001000050166696c6533000000110000009407090166696c652e636f6c64000000", 0x80, 0x8000}, {&(0x7f00000118a0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x11800}, {&(0x7f00000118c0)='\x00\x00\x00\x00\x00\b\x00'/32, 0x20, 0x12000}, {&(0x7f00000001c0)="00000000000800000000000000000000000000000000000000000000000000009609fa720b14f5918d9ed8c0d23d910262df49375c63d727224cd86f2c8cc710", 0x40, 0x12800}, {&(0x7f00000000c0)="00000000000800f5c76edf2608f38ca97255a3495a00"/46, 0x2e, 0x13000}, {&(0x7f0000011920)="504d4d00504d4dff731f1f63000000006872757476696b2e632e676f6f676c6572732e636f6d00000000000000000000000000000000000000000000000000006c6f6f7032310075782f746573742f73797a5f6d6f756e745f696d6167655f650500"/112, 0x70, 0x20000}, {&(0x7f0000002040)="73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657373797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000b6ca6b810358486c77e520ca5de40683779b42a74ab147756edd375dd121d13da0952339cefa13785bb2c0bacd154ae9824c8a86087373998169196169cb2b08455f47e12a239e50f7ffc836c7a28fa539a97027a07de105d240dd607a0e2b694ce476ce05aea1baeb6ae3132a678f324e9a2f09933022b462095731ebe57344f1", 0x4a1, 0x28000}], 0x0, &(0x7f0000002500)=ANY=[@ANYBLOB="00b30824400d21223433bba32035e2ef9711604edf71b82a8fe52765aad2d7836b1a3ba0706a2dbcd3adf3d38a57682198b853fa4e230125fe79a2c4a7e50ec75460bae8f5acee1959c9550f63773d76ea03ae36b4244835a3f5f544aed5577b0212798accf91ecde8621a9dc5cdfee2760508003ff361f94fc318010089b3532183ea8fc6be3f005afae337349b43c202d6c180a2eee27ed2ad99acc703246b4e35b433911d3cfdb6767dff8c0cc2f91ab6c42ebc2c5272197f36cb798833f97edcb11ddfa31834d602f22fe26d5b2094db8417389935f42d9213023fdd367aa1c38e70b68e44ebf44b3fd67798b083f989ae3a4c3cd6f55f339b9ff82bbc68ee3e549c5e63c09b85229f97849d8b093b9cf175f084f4d1a1097057d59d20eae608993156ff12bff4d9c3fa67cf0000ebf075f462f53b6ff908000000c3b95e3b508d50999603000000000000000515bf522ec94a08990c46311f75c2d6b452829b7dbcaf7745a0b7158d7db8120006583c495455301c782bec88a9684756bec6942209ba84329b882d2c9b9287710dbac1269e7c01474ddba5000000001419eca1f3c4ff0a8fb1de3b1bf8d2b875ff49f1efbee816d6635d4ce94f0c5344ebfd68092abecee6e19b4badd6467247c7fa1ab6b8325ba0960337d290545a71be6201d09e5f876468ab32f7c396cd097285139d6c5ee94af37dab2f1fdcdafb7e677f88fd1f41e368ee7dc6c40b1673bac55f5c3440a5bba5c0ebde02ec6a5f7b320841d0bf6b79393eb5195eb39fcde46b9b08cc5e2e3645de0a77603bbdd4011d67c691f4664eee5d25165ada9751678cf7d38c6309b5f457474e81258d68c076ab388761a6d036ead2a51511f5e8657e5038af1632dc7e1e9888d4651542e0e1df8b8314492554b2832f2d7b764d2d52ef2e2569caf83dc1e6c4", @ANYRESOCT, @ANYRES32=0x0], 0x1) [ 730.440599][T21932] fuse: Bad value for 'fd' [ 730.458702][T21943] loop4: detected capacity change from 0 to 8226 [ 730.482649][T21932] fuse: Bad value for 'fd' [ 730.507250][T21932] fuse: Bad value for 'fd' [ 730.529421][T21943] ================================================================== [ 730.537530][T21943] BUG: KASAN: use-after-free in run_unpack+0x84f/0xd00 [ 730.544494][T21943] Read of size 1 at addr ffff88807b3dc148 by task syz-executor.4/21943 [ 730.552749][T21943] [ 730.555087][T21943] CPU: 0 PID: 21943 Comm: syz-executor.4 Not tainted 6.1.0-rc5-syzkaller-00018-g59d0d52c30d4 #0 [ 730.565601][T21943] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/26/2022 [ 730.575680][T21943] Call Trace: [ 730.579231][T21943] [ 730.582340][T21943] dump_stack_lvl+0x1b1/0x28e [ 730.587044][T21943] ? nf_tcp_handle_invalid+0x62e/0x62e [ 730.589317][T21932] fuse: Bad value for 'fd' [ 730.592500][T21943] ? __wake_up_klogd+0xcd/0x100 [ 730.592526][T21943] ? panic+0x710/0x710 [ 730.592546][T21943] ? _printk+0xc0/0x100 [ 730.592564][T21943] ? _raw_spin_lock_irqsave+0x8e/0x100 [ 730.592582][T21943] print_address_description+0x74/0x340 [ 730.592602][T21943] print_report+0x107/0x1f0 [ 730.592617][T21943] ? __virt_addr_valid+0x21b/0x2d0 [ 730.592639][T21943] ? __phys_addr+0xb5/0x160 [ 730.592658][T21943] ? run_unpack+0x84f/0xd00 [ 730.592680][T21943] kasan_report+0xcd/0x100 [ 730.592697][T21943] ? run_unpack+0x84f/0xd00 [ 730.592721][T21943] run_unpack+0x84f/0xd00 [ 730.592748][T21943] run_unpack_ex+0xcc/0x870 [ 730.592774][T21943] ? ni_enum_attr_ex+0x2f6/0x6d0 [ 730.592791][T21943] ? run_unpack+0xd00/0xd00 [ 730.592815][T21943] ? ni_find_attr+0x8c0/0x8c0 [ 730.592834][T21943] ntfs_iget5+0x1cfa/0x36f0 [ 730.592871][T21943] ? check_index_root+0x680/0x680 [ 730.592890][T21943] ? ni_load_mi+0x110/0x110 [ 730.592908][T21943] ? utf16s_to_utf8s+0x737/0x740 [ 730.592930][T21943] ntfs_fill_super+0x2127/0x42a0 [ 730.592965][T21943] ? put_ntfs+0x2a0/0x2a0 [ 730.592986][T21943] ? vscnprintf+0x80/0x80 [ 730.593007][T21943] ? set_blocksize+0x1d5/0x360 [ 730.593029][T21943] get_tree_bdev+0x400/0x620 [ 730.593049][T21943] ? put_ntfs+0x2a0/0x2a0 [ 730.593072][T21943] vfs_get_tree+0x88/0x270 [ 730.593090][T21943] do_new_mount+0x289/0xad0 [ 730.593110][T21943] ? do_move_mount_old+0x150/0x150 [ 730.593137][T21943] ? user_path_at_empty+0x149/0x1a0 [ 730.593155][T21943] __se_sys_mount+0x2d3/0x3c0 [ 730.593174][T21943] ? __x64_sys_mount+0xc0/0xc0 [ 730.607134][T21932] fuse: Bad value for 'fd' [ 730.610793][T21943] ? syscall_enter_from_user_mode+0x2e/0x1d0 [ 730.610822][T21943] ? lockdep_hardirqs_on+0x8d/0x130 [ 730.610843][T21943] ? __x64_sys_mount+0x1c/0xc0 [ 730.610862][T21943] do_syscall_64+0x3d/0xb0 [ 730.642373][T21932] fuse: Bad value for 'fd' [ 730.644914][T21943] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 730.644942][T21943] RIP: 0033:0x7f4e6c08cb6a [ 730.644958][T21943] Code: 48 c7 c2 b8 ff ff ff f7 d8 64 89 02 b8 ff ff ff ff eb d2 e8 b8 04 00 00 0f 1f 84 00 00 00 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 [ 730.644973][T21943] RSP: 002b:00007f4e6cea3f88 EFLAGS: 00000202 [ 730.666867][T21932] fuse: Bad value for 'fd' [ 730.668014][T21943] ORIG_RAX: 00000000000000a5 [ 730.668025][T21943] RAX: ffffffffffffffda RBX: 0000000020000bc0 RCX: 00007f4e6c08cb6a [ 730.668039][T21943] RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f4e6cea3fe0 [ 730.668052][T21943] RBP: 00007f4e6cea4020 R08: 00007f4e6cea4020 R09: 0000000020000000 [ 730.668064][T21943] R10: 0000000000000002 R11: 0000000000000202 R12: 0000000020000000 [ 730.668076][T21943] R13: 0000000020000100 R14: 00007f4e6cea3fe0 R15: 0000000020003580 [ 730.691452][T21932] fuse: Bad value for 'fd' [ 730.691664][T21943] [ 730.712169][T21932] fuse: Bad value for 'fd' [ 730.714617][T21943] [ 730.714623][T21943] Allocated by task 3620: [ 730.714632][T21943] kasan_set_track+0x3d/0x60 [ 730.714652][T21943] __kasan_kmalloc+0x97/0xb0 [ 730.714682][T21943] __kmalloc_node_track_caller+0xad/0x190 [ 730.735289][T21932] fuse: Bad value for 'fd' [ 730.738608][T21943] __alloc_skb+0x112/0x2b0 [ 730.738629][T21943] tcp_stream_alloc_skb+0x3c/0x300 [ 730.738646][T21943] tcp_sendmsg_locked+0xd70/0x40d0 [ 730.738662][T21943] tcp_sendmsg+0x2c/0x40 [ 730.738679][T21943] sock_write_iter+0x3d4/0x540 [ 730.738695][T21943] vfs_write+0x7dc/0xc50 [ 730.738713][T21943] ksys_write+0x177/0x2a0 [ 730.738729][T21943] do_syscall_64+0x3d/0xb0 [ 730.738744][T21943] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 730.738762][T21943] [ 730.738767][T21943] Last potentially related work creation: [ 730.738773][T21943] kasan_save_stack+0x2b/0x50 [ 730.738788][T21943] __kasan_record_aux_stack+0xb0/0xc0 [ 730.738805][T21943] kvfree_call_rcu+0x112/0x880 [ 730.738826][T21943] neigh_periodic_work+0x3e6/0xc30 [ 730.738846][T21943] process_one_work+0x877/0xdb0 [ 730.738864][T21943] worker_thread+0xb14/0x1330 [ 730.738881][T21943] kthread+0x266/0x300 [ 730.738896][T21943] ret_from_fork+0x1f/0x30 [ 730.738914][T21943] [ 730.738917][T21943] Second to last potentially related work creation: [ 730.738923][T21943] kasan_save_stack+0x2b/0x50 [ 730.738936][T21943] __kasan_record_aux_stack+0xb0/0xc0 [ 730.738957][T21943] call_rcu+0x163/0x9c0 [ 730.738974][T21943] process_one_work+0x877/0xdb0 [ 730.769060][T21932] fuse: Bad value for 'fd' [ 730.773248][T21943] worker_thread+0xb14/0x1330 [ 730.773274][T21943] kthread+0x266/0x300 [ 730.773290][T21943] ret_from_fork+0x1f/0x30 [ 730.800102][T21932] fuse: Bad value for 'fd' [ 730.807674][T21943] [ 730.807680][T21943] The buggy address belongs to the object at ffff88807b3dc000 [ 730.807680][T21943] which belongs to the cache kmalloc-1k of size 1024 [ 730.807696][T21943] The buggy address is located 328 bytes inside of [ 730.807696][T21943] 1024-byte region [ffff88807b3dc000, ffff88807b3dc400) [ 730.807713][T21943] [ 730.807717][T21943] The buggy address belongs to the physical page: [ 730.807726][T21943] page:ffffea0001ecf600 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x7b3d8 [ 730.807746][T21943] head:ffffea0001ecf600 order:3 compound_mapcount:0 compound_pincount:0 [ 730.807759][T21943] flags: 0xfff00000010200(slab|head|node=0|zone=1|lastcpupid=0x7ff) [ 730.807782][T21943] raw: 00fff00000010200 dead000000000100 dead000000000122 ffff888012841dc0 [ 730.807795][T21943] raw: 0000000000000000 0000000080100010 00000001ffffffff 0000000000000000 [ 730.845405][T21932] fuse: Bad value for 'fd' [ 730.854920][T21943] page dumped because: kasan: bad access detected [ 730.854935][T21943] page_owner tracks the page as allocated [ 730.854942][T21943] page last allocated via order 3, migratetype Unmovable, gfp_mask 0xd2a20(GFP_ATOMIC|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 0, tgid 0 (swapper/0), ts 99386897677, free_ts 99385778004 [ 730.854975][T21943] get_page_from_freelist+0x742/0x7c0 [ 730.900445][T21932] fuse: Bad value for 'fd' [ 730.900807][T21943] __alloc_pages+0x259/0x560 [ 730.918050][T21932] fuse: Bad value for 'fd' [ 730.919720][T21943] alloc_slab_page+0x70/0xf0 [ 730.919747][T21943] allocate_slab+0x5e/0x4b0 [ 730.919767][T21943] ___slab_alloc+0x782/0xe20 [ 730.919785][T21943] __kmem_cache_alloc_node+0x252/0x310 [ 730.930045][T21932] fuse: Bad value for 'fd' [ 730.933608][T21943] __kmalloc_node_track_caller+0x9c/0x190 [ 730.933637][T21943] __alloc_skb+0x112/0x2b0 [ 730.933652][T21943] __tcp_send_ack+0x98/0x5f0 [ 730.933669][T21943] tcp_rcv_established+0x1240/0x1a10 [ 730.957634][T21932] fuse: Bad value for 'fd' 04:31:46 executing program 5: r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB=',rootmode=0000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0]) read$FUSE(r0, &(0x7f00000021c0)={0x2020}, 0x2020) r1 = openat$fuse(0xffffffffffffff9c, &(0x7f0000000100), 0x2, 0x0) mount$fuseblk(&(0x7f0000000040), &(0x7f0000000080)='./file0\x00', &(0x7f00000000c0), 0x0, &(0x7f0000000440)={{'fd', 0x3d, r1}, 0x2c, {'rootmode', 0x3d, 0x2000}, 0x2c, {}, 0x2c, {}, 0x2c, {[{@blksize={'blksize', 0x3d, 0x800}}, {@default_permissions}]}}) read$FUSE(r1, &(0x7f0000004200)={0x2020}, 0x2020) r2 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000000ec0)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r2, @ANYBLOB="2c726f6f746d6f64653d30303030303030069575fb000400000000000030303034293030302c757365725f69643d", @ANYRESDEC=0x0, @ANYBLOB=',group_id=']) read$FUSE(r2, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f00000066c0)={0x50, 0x0, r3, {0x7, 0x21, 0x0, 0x120b13}}, 0x50) write$FUSE_IOCTL(0xffffffffffffffff, &(0x7f0000000040)={0x20, 0x0, r3, {0xffffff01, 0x4, 0x4, 0x2}}, 0x20) syz_read_part_table(0x2, 0x1, &(0x7f0000000000)=[{&(0x7f00000000c0)="86d580b14a1909764190a68b115b306f4529256a78b745738ae2949ba4c22111d3c020b2930932965297a7eeecb29d5c58dd2e385e3b65481b25f7a79f160909fc74fcaf936159fbcab80a2dbf36cb169f9aa7870338c206616094a911bd5d185b23933febfb22d6788215cd67235fab498513b36c08e3f21710f2bfd35367b6e9ada8c8a63470a5b85a9bc1648af97f3cb2f95154813a858a396926f8dad0f3b2860d24dfe25c5672f0b54fb336a63059874798e4f78afcb126befe59c38d9718d56b20fc2fc0074459934887be47bca048137cab1bd49c041ae65d57dc98764b51ed3516cd579e21f62f929a30b0afb0ff36b9d50701c33a93f7c22355760236e49de8db4e5e55df6265e88a86c1a035b5969fd72d25314b9f393c0242c13a4339f0d276cdb6f0f38b33cbc7f58221625f9aa3265aca0b174ab0a2f7c6ef8b9e049b5e1d301798ae362a316ca1e992e87745a5fc58746af27474ab0df704d12cf3db2ea3060c213829fbf079b2f5ff88ef7a655492c55292b083fc446c1ab30c04490c831e37ae6572a74ff01c069b78e1d60d66bb4a68dad037ed1f7b669de43d2d91b437385122fdd13a9662a8efda6bda79f1b463542ae814cf7962e5cbe7248b562587b815ec988c5f4b8797e21f50f3b527630351bca5e960d037d5f0e92ef04e6b768824691b31470369259a398f25c7cb86735788c5fb238defca955a6ce8eaa3e24446a541593ac9edf1734f954383851f28861c6e2cd58988aea59f4f9bd79b3bd97f795095e5275bda622f774c8211c2d4893e94fd62ba5b3b413b592ca53c22da78a8eccda93fada36deb24a38a256c59316aa3228a352e986f6869298fbe06ceb5fa98ff86073d664afb515e53e5e9799604ccc49fb29ac3c8c0a8a10e6f872917ea3a9f6fafe2c973903b3da848e86653d35d1a4766f925031075916a6ebfb61421e4fdf623eb9106378cc531c9773d99b2b6a7e3f8f47a04136daac674138adbd73fb57cf2d80e2e50fbd8f75e0979cf25de575fb2b33d8190c71899e99708bbac57664debc9b711a3e28044d0a6fc135ed3422922d35dd72146b404aa27dde6473d14af5a3320231da204cce12ddef56c6340b3fe56850a49bbb53fb246276ce0afb6b493d0444fedb3cc46f26fd8dd9a60aeedc1c0d225b41dad624f6960f5806d2798936b0beb41721302ad3ee5150ba0aff1ffb5b0d951880c7ed984c13994d08cad10f7cfcd25ff0801bce3381a5533d502c9c977a983eb23d5219cd96c2237188c9535bb26285b4cc8693a9240629add96369e6d68772c995ad95f81158afe8e86e8508c0d7b551a8dc2e229a88996900aed27bcbdf913bb6937d69975c2ada62095edf302f38ed3ff5839661d8c5a3cfae90d8c1b339a085b1596b7de42cd2e477bb94eb66266d57e543400e28be34485c851679b4fd074347b08f81e11300ed88ccbc33742fbc0a5b90d7c08ce5b0d8d123ffe0748a8f82a549a43ca8df9c28b3b9639a45a3c70dda2b598e311c90f86ec68c12d7edd0238bd7b9442f9cba8b256e65b0bb4d9e578e9c3c0e9bb7c91b5885d0165582a5cb7e4f2848b5665db78dff128006f940c919e010adda7c1a61536bf9c6f1dc1d6a33c9663b16beb18fd5ea32ca721cf6e3597f62618012099d2e7d076f77f540189ea44b23b2d30441c44da0b598c1ab6bec63291ecb9ad88c4b480bff577a5e4d99391972341881c98485471b70e5767a152b06d9d42874d59bb59b6b3ab959d4386825050572ccaecdcb2811c57704250447cea8b3c5c149441a1bd5e2bf3d1433e0a4921c788da67705a589f2814013eacb8a1aad5b81306cc06cfd7a5edc134b943e8534784d7ff66216e4f0220a05733cd6a68a8e558753e7917c96c73d65a75ab71453b7816fa4fa37a6410fe22d2deb98ff2153cf5ca86b4bd7c5168dd8f9fc6a90726cf2bebe9a8811e075df63ee4c2e8f1ee9619d9cf64fc72bb25d4bfd8c56eea8c5d7539e67b0e8a22e908c9131574fe1119d8dabe30c8e0c5ce31be9ef7eca68629b92c3ef3bcb8699257aec7d059bedcdc2144d1f5b35de298988f43886c25bc455b99bb834ee5f57fa6a1bccbabec57168ae561c0fef5a3322d883d2c1d8fd45a13e38e767fde0ef85e067d19c2b3eb34c3018a4a1bf848f0cb1bb0c5927589cbe2fde5cdaf38b44681942568b3d2b75793c78f2d1851b2e37d3914452e64587bd9a9f4c009c36679ed1a6d1f6175ae847ec10df23ca2e90a7cb5eeeaacac36d62cd42f8d307a3041f22a8f758dfc287ffedf4cb73fc93584339edad7d7a1232415819549ec0078120e979d1bce7863335d3d2be8afc9c7ff874bd8288d76eab1215470090956af2c02777471a880b39ce462a2a7a98c682522c544a7576dc9bacb2ec0193b7db9aa461a815ee0a72217de418a3f5814e2c5493ba04c5baf23b7550036faf523f2ee2a36914d6513e7625a915858f26ca6cc23e337207d16d87014e9888d671fc41267c47e64441faf6e2dfbb3056eff331082484b3055f0e3305007db96a3a713ffaf924e41b14b22128f967ea4c326dd981f1526bd8bf55bd4efdc1c01e527a91984d0ea81e270eca6d59403aa74b45803bd749dbe6fb8a178705a748f0e93122c5bc032d876e9084a6b6d75eceb5b6d02853135d997548503e76e3aa55667de37c2df567c82ac59362be188652191ed3a46c7da866f16fd3b33c35e9a38b2ea6757ba184290355b432760cd87d275ca85877722e5b6e3f8ca9734051d0cb98b8af7017ed4996daabf8451e37e968de6973ae5e12b6507774e03c8e90c5d5f71d9042efe893e4a453c912565326cb048c6ad02fc0038f2715d9c410d67e21555ae9536f8ab1e8f30b04ad219516e2cedf6d105bc6a0aca49699b6bee6fbdd7928abe4a19a4ee31cd047521fd8ff4853fab8ef21aba676e907dab4b1acc8ab8a6843adce0d1aae30ce6b9519c1af68959d6a2c2fc0811b7ca0089630b828983adb60a3a8d60715bed647afba58f875784de480b86c44d00b4ea48503b2524a0a2ef96aa99e9ac4fac19cb779c52f6094a5c70d72585e0db2833e01fa29128870bdb54b4e63bfb1d9b7bfc41b69b3c22bd661d45a5c5efc60c871856edfd0103b7bdaf17edb0e2df63f6aae4eb45e6413ebe28d2d85675bc91bf411a9bcf7e0e9ff42ed701b0a4c83bd48c2fb099d5255ff824dd568bff29fc6790012e6e891bdd4a3e2273a480ec8f55bf3ee9b6f44b3a7874dade5019e849fcdf0aeb54ce27d7331153639d122de227aa26aa4784a09ddcc65f96745311e92205ab1cf2b2e67469e2203f80ce4ed1eb0f04a30d383184c96872fc5ee8825320cf42de0439bb9bc09b20264127c126f7fc3d697981bc932fff556be350548b3d6c559248369a563370964c380f6f124381c6f5fe4b0238c104bc6824de07239bf5e7798179a023cf2c5a5808f5cc81fdc7e3ca1645808ac84ff17256f49d950cd670d0c52f4f4e18274f1d1baef71178f58d42d9596f053ceee5f0840567e24b65e48941acc579019e7f4e5a03cff3bca0c980bd616c48e5bb095d70c7a1036f98eac9e84cbf8db6b33d1fe7c15a6c24c75e8800e353a165c261082a8879b62789c55bf5707fd53279f3ae77bdc3a7ce4ec28982e2b5bf1119f27ec9a5897ce6f0933208a6f579a10bc5e8d4bf994e7a476add88a3faad216cde2078723fac6d2c1c6b86238edf1900601e1aed19329df2e8934c3126b16cc5578b310c702ac263eaad26511447527918f959151d59005f69e586ce7646e5268b51b4a6a0edbe8e9b9380b7f187739de58e1308eaedddec9101700ad377c59129636ac0c0cc0b61d3665499f3379503dc51e4b1e1010f087bff581cb32d9623ad146b1c62e25ac930b26779fb5e9ce787ce9cd3b280adc30237804bf721ead8c4052e362b02d4db435aa8446c479d99a245588d621dffb04f86050a0926aafb58030faecde1847ab55c89049a10517caf11ea09ec70610c740a4237ae3efe04514923344e82e9e9ea91089181a9eee81aa32392e05d0815a12d072e05ee9d7e6150e7febc01df7c76d867a48045eb44e083a16402956bac15d260d15d0654f4deb13702371512a8de3d6274085ac3bf29f49d5fef98d4e80d3231c6eef00db1108d4d6bfe405eac7b5c976c42df2806660b1f03788bfcc332a9ccb13bbaefe59a4377955b0bbd1fcb963a2ba69312e5b86a8a2be6b7c848ca4ce8102d2236ea6ec0a2393d1f6e659ac436f273e79e2d70e524db2ea66321be2ffe69b2bd62584facada3f64d75943c83b1216ec64d4431ccfafbb829cab8a659a029cf35968f0cf93af5236ff4708114b55459224dfa1974b106c046d612bd8fb5f90ad6fe366c331752eb37d64696b6b708b0afdd7e52ac4cf3280b23b269a7f274d96765f7468b6ac5954ff6f3de8a79c7bbbca1db9e4912426ae0c93d0476bcba45e5084c4c0a0b1a1b291e31080b42dfa7908047e2566efbaa0564d432611f17341a74b53ef29926dbd589681a16d8274090fbd29ae54ce7b97988c88a04ff9219644c0726de7e5eafe5b8182fb8cc5b9155bb5003b43190c8f9fea6b318c761dd13596a71ea77fb56a81bb3f5f19dfc577f9c4fe4c8d5c0923e7fd84b2093ac39580d297e258cc4c8ed35ffb53ee6eff0255b48e762b49891d43a0795ac8e8498335876a89b8cbac7c38b9d1efaf39361643873e1f0ab1cf73377706fd9316981f045fa0f849014e81a0f07c52408b157a6be86050807c9d299fbd87d1602ae299a88a18380e278f5fde7660d11ec5fbc7700083d9e19cde295004579e39582ee66b7fadeadf8e023ef5b7e998e7b56cb9661b75e3714f88a7c36933c4b42f01ea694d190c68bbd7e93ee4e653af2a1c122028f5962847a84e3ea2a952244de15de0e5d2382e309e898f5fea1f1a87fd804a92c8ac84280f41b92cdeb8f892a62e54999013bb668a6daa2dde3158dd0bba0d3825e0e4966942a9029e527b88cec6531acdc3233d301f1eafb34e38dd58c625e73349d28044fc5b067a881f021aa", 0xe00}]) [ 730.962040][T21943] tcp_v4_do_rcv+0x479/0xac0 [ 730.962066][T21943] tcp_v4_rcv+0x23c1/0x2c80 [ 730.962084][T21943] ip_protocol_deliver_rcu+0x38d/0x750 [ 730.962104][T21943] ip_local_deliver_finish+0x269/0x480 [ 730.962122][T21943] ip_sublist_rcv+0xa8b/0xb70 [ 730.988989][T21932] fuse: Bad value for 'fd' [ 730.991143][T21943] ip_list_rcv+0x443/0x490 [ 730.991170][T21943] page last free stack trace: [ 730.991176][T21943] free_pcp_prepare+0x80c/0x8f0 [ 730.991193][T21943] free_unref_page+0x7d/0x5f0 [ 730.991213][T21943] skb_release_data+0x58e/0x6d0 [ 731.003837][T21932] fuse: Bad value for 'fd' [ 731.004919][T21943] __kfree_skb+0x56/0x1d0 [ 731.004940][T21943] tcp_recvmsg_locked+0x14ab/0x25c0 [ 731.004961][T21943] tcp_recvmsg+0x337/0x870 [ 731.004979][T21943] inet_recvmsg+0x13a/0x250 [ 731.026406][T21932] fuse: Bad value for 'fd' [ 731.028375][T21943] sock_read_iter+0x3fa/0x530 [ 731.028398][T21943] vfs_read+0x7ac/0xbf0 [ 731.028417][T21943] ksys_read+0x177/0x2a0 [ 731.028436][T21943] do_syscall_64+0x3d/0xb0 [ 731.050925][T21932] fuse: Bad value for 'fd' [ 731.057642][T21943] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 731.057669][T21943] [ 731.057673][T21943] Memory state around the buggy address: [ 731.057683][T21943] ffff88807b3dc000: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 731.057694][T21943] ffff88807b3dc080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 731.057705][T21943] >ffff88807b3dc100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 731.057713][T21943] ^ [ 731.057721][T21943] ffff88807b3dc180: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 731.057730][T21943] ffff88807b3dc200: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb [ 731.057738][T21943] ================================================================== [ 731.402126][T21943] Kernel panic - not syncing: panic_on_warn set ... [ 731.408739][T21943] CPU: 1 PID: 21943 Comm: syz-executor.4 Not tainted 6.1.0-rc5-syzkaller-00018-g59d0d52c30d4 #0 [ 731.419167][T21943] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/26/2022 [ 731.429323][T21943] Call Trace: [ 731.432600][T21943] [ 731.435524][T21943] dump_stack_lvl+0x1b1/0x28e [ 731.440207][T21943] ? nf_tcp_handle_invalid+0x62e/0x62e [ 731.445661][T21943] ? panic+0x710/0x710 [ 731.449726][T21943] ? preempt_schedule_common+0xb7/0xe0 [ 731.455193][T21943] ? vscnprintf+0x59/0x80 [ 731.459516][T21943] panic+0x2d6/0x710 [ 731.463410][T21943] ? memcpy_page_flushcache+0xfc/0xfc [ 731.468776][T21943] ? _raw_spin_unlock_irqrestore+0x110/0x120 [ 731.474779][T21943] ? print_report+0x1b4/0x1f0 [ 731.479461][T21943] ? run_unpack+0x84f/0xd00 [ 731.483975][T21943] end_report+0x91/0xa0 [ 731.488134][T21943] kasan_report+0xda/0x100 [ 731.492551][T21943] ? run_unpack+0x84f/0xd00 [ 731.497053][T21943] run_unpack+0x84f/0xd00 [ 731.501385][T21943] run_unpack_ex+0xcc/0x870 [ 731.505889][T21943] ? ni_enum_attr_ex+0x2f6/0x6d0 [ 731.510816][T21943] ? run_unpack+0xd00/0xd00 [ 731.515314][T21943] ? ni_find_attr+0x8c0/0x8c0 [ 731.519988][T21943] ntfs_iget5+0x1cfa/0x36f0 [ 731.524496][T21943] ? check_index_root+0x680/0x680 [ 731.529565][T21943] ? ni_load_mi+0x110/0x110 [ 731.534074][T21943] ? utf16s_to_utf8s+0x737/0x740 [ 731.539005][T21943] ntfs_fill_super+0x2127/0x42a0 [ 731.543951][T21943] ? put_ntfs+0x2a0/0x2a0 [ 731.548274][T21943] ? vscnprintf+0x80/0x80 [ 731.552613][T21943] ? set_blocksize+0x1d5/0x360 [ 731.557371][T21943] get_tree_bdev+0x400/0x620 [ 731.561957][T21943] ? put_ntfs+0x2a0/0x2a0 [ 731.566278][T21943] vfs_get_tree+0x88/0x270 [ 731.570686][T21943] do_new_mount+0x289/0xad0 [ 731.575267][T21943] ? do_move_mount_old+0x150/0x150 [ 731.580368][T21943] ? user_path_at_empty+0x149/0x1a0 [ 731.585563][T21943] __se_sys_mount+0x2d3/0x3c0 [ 731.590235][T21943] ? __x64_sys_mount+0xc0/0xc0 [ 731.594988][T21943] ? syscall_enter_from_user_mode+0x2e/0x1d0 [ 731.600975][T21943] ? lockdep_hardirqs_on+0x8d/0x130 [ 731.606178][T21943] ? __x64_sys_mount+0x1c/0xc0 [ 731.610951][T21943] do_syscall_64+0x3d/0xb0 [ 731.615369][T21943] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 731.621260][T21943] RIP: 0033:0x7f4e6c08cb6a [ 731.625679][T21943] Code: 48 c7 c2 b8 ff ff ff f7 d8 64 89 02 b8 ff ff ff ff eb d2 e8 b8 04 00 00 0f 1f 84 00 00 00 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 [ 731.645275][T21943] RSP: 002b:00007f4e6cea3f88 EFLAGS: 00000202 ORIG_RAX: 00000000000000a5 [ 731.653767][T21943] RAX: ffffffffffffffda RBX: 0000000020000bc0 RCX: 00007f4e6c08cb6a [ 731.661728][T21943] RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f4e6cea3fe0 [ 731.669796][T21943] RBP: 00007f4e6cea4020 R08: 00007f4e6cea4020 R09: 0000000020000000 [ 731.677762][T21943] R10: 0000000000000002 R11: 0000000000000202 R12: 0000000020000000 [ 731.685726][T21943] R13: 0000000020000100 R14: 00007f4e6cea3fe0 R15: 0000000020003580 [ 731.693739][T21943] [ 731.697004][T21943] Kernel Offset: disabled [ 731.701318][T21943] Rebooting in 86400 seconds..