6d767d768d769d76ad76bd76cd76dd76ed76fd770d771d772d773d774d775d776d777d778d779d77ad77bd77cd77dd77ed77fd780d781d782d783d784d785d786d787d788d789d78ad78bd78cd78dd78ed78fd790d791d792d793d794d795d796d797d798d799d79ad79bd79cd79dd79ed79fd7a0d7a1d7a2d7a3d7a4d7a5d7a6d7a7d7a8d7a9d7aad7abd7acd7add7aed7afd7b0d7b1d7b2d7b3d7b4d7b5d7b6d7b7d7b8d7b9d7bad7bbd7bcd7bdd7bed7bfd7c0d7c1d7c2d7c3d7c4d7c5d7c6d7c7d7c8d7c9d7cad7cbd7ccd7cdd7ced7cfd7d0d7d1d7d2d7d3d7d4d7d5d7d6d7d7d7d8d7d9d7dad7dbd7dcd7ddd7ded7dfd7e0d7e1d7e2d7e3d7e4d7e5d7e6d7e7d7e8d7e9d7ead7ebd7ecd7edd7eed7efd7f0d7f1d7f2d7f3d7f4d7f5d7f6d7f7d7f8d7f9d7fad7fbd7fcd7fdd7fed7ffd700d801d802d803d804d805d806d807d808d809d80ad80bd80cd80dd80ed80fd810d811d812d813d814d815d816d817d818d819d81ad81bd81cd81dd81ed81fd820d821d822d823d824d825d826d827d828d829d82ad82bd82cd82dd82ed82fd830d831d832d833d834d835d836d837d838d839d83ad83bd83cd83dd83ed83fd840d841d842d843d844d845d846d847d848d849d84ad84bd84cd84dd84ed84fd850d851d852d853d854d855d856d857d858d859d85ad85bd85cd85dd85ed85fd860d861d862d863d864d865d866d867d868d869d86ad86bd86cd86dd86ed86fd870d871d872d873d874d875d876d877d878d879d87ad87bd87cd87dd87ed87fd880d881d882d883d884d885d886d887d888d889d88ad88bd88cd88dd88ed88fd890d891d892d893d894d895d896d897d898d899d89ad89bd89cd89dd89ed89fd8a0d8a1d8a2d8a3d8a4d8a5d8a6d8a7d8a8d8a9d8aad8abd8acd8add8aed8afd8b0d8b1d8b2d8b3d8b4d8b5d8b6d8b7d8b8d8b9d8bad8bbd8bcd8bdd8bed8bfd8c0d8c1d8c2d8c3d8c4d8c5d8c6d8c7d8c8d8c9d8cad8cbd8ccd8cdd8ced8cfd8d0d8d1d8d2d8d3d8d4d8d5d8d6d8d7d8d8d8d9d8dad8dbd8dcd8ddd8ded8dfd8e0d8e1d8e2d8e3d8e4d8e5d8e6d8e7d8e8d8e9d8ead8ebd8ecd8edd8eed8efd8f0d8f1d8f2d8f3d8f4d8f5d8f6d8f7d8f8d8f9d8fad8fbd8fcd8fdd8fed8ffd800d901d902d903d904d905d906d907d908d909d90ad90bd90cd90dd90ed90fd910d911d912d913d914d915d916d917d918d919d91ad91bd91cd91dd91ed91fd920d921d922d923d924d925d926d927d928d929d92ad92bd92cd92dd92ed92fd930d931d932d933d934d935d936d937d938d939d93ad93bd93cd93dd93ed93fd940d941d942d943d944d945d946d947d948d949d94ad94bd94cd94dd94ed94fd950d951d952d953d954d955d956d957d958d959d95ad95bd95cd95dd95ed95fd960d961d962d963d964d965d966d967d968d969d96ad96bd96cd96dd96ed96fd970d971d972d973d974d975d976d977d978d979d97ad97bd97cd97dd97ed97fd980d981d982d983d984d985d986d987d988d989d98ad98bd98cd98dd98ed98fd990d991d992d993d994d995d996d997d998d999d99ad99bd99cd99dd99ed99fd9a0d9a1d9a2d9a3d9a4d9a5d9a6d9a7d9a8d9a9d9aad9abd9acd9add9aed9afd9b0d9b1d9b2d9b3d9b4d9b5d9b6d9b7d9b8d9b9d9bad9bbd9bcd9bdd9bed9bfd9c0d9c1d9c2d9c3d9c4d9c5d9c6d9c7d9c8d9c9d9cad9cbd9ccd9cdd9ced9cfd9d0d9d1d9d2d9d3d9d4d9d5d9d6d9d7d9d8d9d9d9dad9dbd9dcd9ddd9ded9dfd9e0d9e1d9e2d9e3d9e4d9e5d9e6d9e7d9e8d9e9d9ead9ebd9ecd9edd9eed9efd9f0d9f1d9f2d9f3d9f4d9f5d9f6d9f7d9f8d9f9d9fad9fbd9fcd9fdd9fed9ffd900da01da02da03da04da05da06da07da08da09da0ada0bda0cda0dda0eda0fda10da11da12da13da14da15da16da17da18da19da1ada1bda1cda1dda1eda1fda20da21da22da23da24da25da26da27da28da29da2ada2bda2cda2dda2eda2fda30da31da32da33da34da35da36da37da38da39da3ada3bda3cda3dda3eda3fda40da41da42da43da44da45da46da47da48da49da4ada4bda4cda4dda4eda4fda50da51da52da53da54da55da56da57da58da59da5ada5bda5cda5dda5eda5fda60da61da62da63da64da65da66da67da68da69da6ada6bda6cda6dda6eda6fda70da71da72da73da74da75da76da77da78da79da7ada7bda7cda7dda7eda7fda80da81da82da83da84da85da86da87da88da89da8ada8bda8cda8dda8eda8fda90da91da92da93da94da95da96da97da98da99da9ada9bda9cda9dda9eda9fdaa0daa1daa2daa3daa4daa5daa6daa7daa8daa9daaadaabdaacdaaddaaedaafdab0dab1dab2dab3dab4dab5dab6dab7dab8dab9dabadabbdabcdabddabedabfdac0dac1dac2dac3dac4dac5dac6dac7dac8dac9dacadacbdaccdacddacedacfdad0dad1dad2dad3dad4dad5dad6dad7dad8dad9dadadadbdadcdadddadedadfdae0dae1dae2dae3dae4dae5dae6dae7dae8dae9daeadaebdaecdaeddaeedaefdaf0daf1daf2daf3daf4daf5daf6daf7daf8daf9dafadafbdafcdafddafedaffda00db01db02db03db04db05db06db07db08db09db0adb0bdb0cdb0ddb0edb0fdb10db11db12db13db14db15db16db17db18db19db1adb1bdb1cdb1ddb1edb1fdb20db21db22db23db24db25db26db27db28db29db2adb2bdb2cdb2ddb2edb2fdb30db31db32db33db34db35db36db37db38db39db3adb3bdb3cdb3ddb3edb3fdb40db41db42db43db44db45db46db47db48db49db4adb4bdb4cdb4ddb4edb4fdb50db51db52db53db54db55db56db57db58db59db5adb5bdb5cdb5ddb5edb5fdb60db61db62db63db64db65db66db67db68db69db6adb6bdb6cdb6ddb6edb6fdb70db71db72db73db74db75db76db77db78db79db7adb7bdb7cdb7ddb7edb7fdb80db81db82db83db84db85db86db87db88db89db8adb8bdb8cdb8ddb8edb8fdb90db91db92db93db94db95db96db97db98db99db9adb9bdb9cdb9ddb9edb9fdba0dba1dba2dba3dba4dba5dba6dba7dba8dba9dbaadbabdbacdbaddbaedbafdbb0dbb1dbb2dbb3dbb4dbb5dbb6dbb7dbb8dbb9dbbadbbbdbbcdbbddbbedbbfdbc0dbc1dbc2dbc3dbc4dbc5dbc6dbc7dbc8dbc9dbcadbcbdbccdbcddbcedbcfdbd0dbd1dbd2dbd3dbd4dbd5dbd6dbd7dbd8dbd9dbdadbdbdbdcdbdddbdedbdfdbe0dbe1dbe2dbe3dbe4dbe5dbe6dbe7dbe8dbe9dbeadbebdbecdbeddbeedbefdbf0dbf1dbf2dbf3dbf4dbf5dbf6dbf7dbf8dbf9dbfadbfbdbfcdbfddbfedbffdb00dc01dc02dc03dc04dc05dc06dc07dc08dc09dc0adc0bdc0cdc0ddc0edc0fdc10dc11dc12dc13dc14dc15dc16dc17dc18dc19dc1adc1bdc1cdc1ddc1edc1fdc20dc21dc22dc23dc24dc25dc26dc27dc28dc29dc2adc2bdc2cdc2ddc2edc2fdc30dc31dc32dc33dc34dc35dc36dc37dc38dc39dc3adc3bdc3cdc3ddc3edc3fdc40dc41dc42dc43dc44dc45dc46dc47dc48dc49dc4adc4bdc4cdc4ddc4edc4fdc50dc51dc52dc53dc54dc55dc56dc57dc58dc59dc5adc5bdc5cdc5ddc5edc5fdc60dc61dc62dc63dc64dc65dc66dc67dc68dc69dc6adc6bdc6cdc6ddc6edc6fdc70dc71dc72dc73dc74dc75dc76dc77dc78dc79dc7adc7bdc7cdc7ddc7edc7fdc80dc81dc82dc83dc84dc85dc86dc87dc88dc89dc8adc8bdc8cdc8ddc8edc8fdc90dc91dc92dc93dc94dc95dc96dc97dc98dc99dc9adc9bdc9cdc9ddc9edc9fdca0dca1dca2dca3dca4dca5dca6dca7dca8dca9dcaadcabdcacdcaddcaedcafdcb0dcb1dcb2dcb3dcb4dcb5dcb6dcb7dcb8dcb9dcbadcbbdcbcdcbddcbedcbfdcc0dcc1dcc2dcc3dcc4dcc5dcc6dcc7dcc8dcc9dccadccbdcccdccddccedccfdcd0dcd1dcd2dcd3dcd4dcd5dcd6dcd7dcd8dcd9dcdadcdbdcdcdcdddcdedcdfdce0dce1dce2dce3dce4dce5dce6dce7dce8dce9dceadcebdcecdceddceedcefdcf0dcf1dcf2dcf3dcf4dcf5dcf6dcf7dcf8dcf9dcfadcfbdcfcdcfddcfedcffdc00dd01dd02dd03dd04dd05dd06dd07dd08dd09dd0add0bdd0cdd0ddd0edd0fdd10dd11dd12dd13dd14dd15dd16dd17dd18dd19dd1add1bdd1cdd1ddd1edd1fdd20dd21dd22dd23dd24dd25dd26dd27dd28dd29dd2add2bdd2cdd2ddd2edd2fdd30dd31dd32dd33dd34dd35dd36dd37dd38dd39dd3add3bdd3cdd3ddd3edd3fdd40dd41dd42dd43dd44dd45dd46dd47dd48dd49dd4add4bdd4cdd4ddd4edd4fdd50dd51dd52dd53dd54dd55dd56dd57dd58dd59dd5add5bdd5cdd5ddd5edd5fdd60dd61dd62dd63dd64dd65dd66dd67dd68dd69dd6add6bdd6cdd6ddd6edd6fdd70dd71dd72dd73dd74dd75dd76dd77dd78dd79dd7add7bdd7cdd7ddd7edd7fdd80dd81dd82dd83dd84dd85dd86dd87dd88dd89dd8add8bdd8cdd8ddd8edd8fdd90dd91dd92dd93dd94dd95dd96dd97dd98dd99dd9add9bdd9cdd9ddd9edd9fdda0dda1dda2dda3dda4dda5dda6dda7dda8dda9ddaaddabddacddadddaeddafddb0ddb1ddb2ddb3ddb4ddb5ddb6ddb7ddb8ddb9ddbaddbbddbcddbdddbeddbfddc0ddc1ddc2ddc3ddc4ddc5ddc6ddc7ddc8ddc9ddcaddcbddccddcdddceddcfddd0ddd1ddd2ddd3ddd4ddd5ddd6ddd7ddd8ddd9dddadddbdddcdddddddedddfdde0dde1dde2dde3dde4dde5dde6dde7dde8dde9ddeaddebddecddedddeeddefddf0ddf1ddf2ddf3ddf4ddf5ddf6ddf7ddf8ddf9ddfaddfbddfcddfdddfeddffdd00de01de02de03de04de05de06de07de08de09de0ade0bde0cde0dde0ede0fde10de11de12de13de14de15de16de17de18de19de1ade1bde1cde1dde1ede1fde20de21de22de23de24de25de26de27de28de29de2ade2bde2cde2dde2ede2fde30de31de32de33de34de35de36de37de38de39de3ade3bde3cde3dde3ede3fde40de41de42de43de44de45de46de47de48de49de4ade4bde4cde4dde4ede4fde50de51de52de53de54de55de56de57de58de59de5ade5bde5cde5dde5ede5fde60de61de62de63de64de65de66de67de68de69de6ade6bde6cde6dde6ede6fde70de71de72de73de74de75de76de77de78de79de7ade7bde7cde7dde7ede7fde80de81de82de83de84de85de86de87de88de89de8ade8bde8cde8dde8ede8fde90de91de92de93de94de95de96de97de98de99de9ade9bde9cde9dde9ede9fdea0dea1dea2dea3dea4dea5dea6dea7dea8dea9deaadeabdeacdeaddeaedeafdeb0deb1deb2deb3deb4deb5deb6deb7deb8deb9debadebbdebcdebddebedebfdec0dec1dec2dec3dec4dec5dec6dec7dec8dec9decadecbdeccdecddecedecfded0ded1ded2ded3ded4ded5ded6ded7ded8ded9dedadedbdedcdedddedededfdee0dee1dee2dee3dee4dee5dee6dee7dee8dee9deeadeebdeecdeeddeeedeefdef0def1def2def3def4def5def6def7def8def9defadefbdefcdefddefedeffde00df01df02df03df04df05df06df07df08df09df0adf0bdf0cdf0ddf0edf0fdf10df11df12df13df14df15df16df17df18df19df1adf1bdf1cdf1ddf1edf1fdf20df21df22df23df24df25df26df27df28df29df2adf2bdf2cdf2ddf2edf2fdf30df31df32df33df34df35df36df37df38df39df3adf3bdf3cdf3ddf3edf3fdf40df41df42df43df44df45df46df47df48df49df4adf4bdf4cdf4ddf4edf4fdf50df51df52df53df54df55df56df57df58df59df5adf5bdf5cdf5ddf5edf5fdf60df61df62df63df64df65df66df67df68df69df6adf6bdf6cdf6ddf6edf6fdf70df71df72df73df74df75df76df77df78df79df7adf7bdf7cdf7ddf7edf7fdf80df81df82df83df84df85df86df87df88df89df8adf8bdf8cdf8ddf8edf8fdf90df91df92df93df94df95df96df97df98df99df9adf9bdf9cdf9ddf9edf9fdfa0dfa1dfa2dfa3dfa4dfa5dfa6dfa7dfa8dfa9dfaadfabdfacdfaddfaedfafdfb0dfb1dfb2dfb3dfb4dfb5dfb6dfb7dfb8dfb9dfbadfbbdfbcdfbddfbedfbfdfc0dfc1dfc2dfc3dfc4dfc5dfc6dfc7dfc8dfc9dfcadfcbdfccdfcddfcedfcfdfd0dfd1dfd2dfd3dfd4dfd5dfd6dfd7dfd8dfd9dfdadfdbdfdcdfdddfdedfdfdfe0dfe1dfe2dfe3dfe4dfe5dfe6dfe7dfe8dfe9dfeadfebdfecdfeddfeedfefdff0dff1dff2dff3dff4dff5dff6dff7dff8dff9dffadffbdffcdffddffedfffdf00e001e002e003e004e005e006e007e008e009e00ae00be00ce00de00ee00fe010e011e012e013e014e015e016e017e018e019e01ae01be01ce01de01ee01fe020e021e022e023e024e025e026e027e028e029e02ae02be02ce02de02ee02fe030e031e032e033e034e035e036e037e038e039e03ae03be03ce03de03ee03fe040e041e042e043e044e045e046e047e048e049e04ae04be04ce04de04ee04fe050e051e052e053e054e055e056e057e058e059e05ae05be05ce05de05ee05fe060e061e062e063e064e065e066e067e068e069e06ae06be06ce06de06ee06fe070e071e072e073e074e075e076e077e078e079e07ae07be07ce07de07ee07fe080e081e082e083e084e085e086e087e088e089e08ae08be08ce08de08ee08fe090e091e092e093e094e095e096e097e098e099e09ae09be09ce09de09ee09fe0a0e0a1e0a2e0a3e0a4e0a5e0a6e0a7e0a8e0a9e0aae0abe0ace0ade0aee0afe0b0e0b1e0b2e0b3e0b4e0b5e0b6e0b7e0b8e0b9e0bae0bbe0bce0bde0bee0bfe0c0e0c1e0c2e0c3e0c4e0c5e0c6e0c7e0c8e0c9e0cae0cbe0cce0cde0cee0cfe0d0e0d1e0d2e0d3e0d4e0d5e0d6e0d7e0d8e0d9e0dae0dbe0dce0dde0dee0dfe0e0e0e1e0e2e0e3e0e4e0e5e0e6e0e7e0e8e0e9e0eae0ebe0ece0ede0eee0efe0f0e0f1e0f2e0f3e0f4e0f5e0f6e0f7e0f8e0f9e0fae0fbe0fce0fde0fee0ffe000e101e102e103e104e105e106e107e108e109e10ae10be10ce10de10ee10fe110e111e112e113e114e115e116e117e118e119e11ae11be11ce11de11ee11fe120e121e122e123e124e125e126e127e128e129e12ae12be12ce12de12ee12fe130e131e132e133e134e135e136e137e138e139e13ae13be13ce13de13ee13fe140e141e142e143e144e145e146e147e148e149e14ae14be14ce14de14ee14fe150e151e152e153e154e155e156e157e158e159e15ae15be15ce15de15ee15fe160e161e162e163e164e165e166e167e168e169e16ae16be16ce16de16ee16fe170e171e172e173e174e175e176e177e178e179e17ae17be17ce17de17ee17fe180e181e182e183e184e185e186e187e188e189e18ae18be18ce18de18ee18fe190e191e192e193e194e195e196e197e198e199e19ae19be19ce19de19ee19fe1a0e1a1e1a2e1a3e1a4e1a5e1a6e1a7e1a8e1a9e1aae1abe1ace1ade1aee1afe1b0e1b1e1b2e1b3e1b4e1b5e1b6e1b7e1b8e1b9e1bae1bbe1bce1bde1bee1bfe1c0e1c1e1c2e1c3e1c4e1c5e1c6e1c7e1c8e1c9e1cae1cbe1cce1cde1cee1cfe1d0e1d1e1d2e1d3e1d4e1d5e1d6e1d7e1d8e1d9e1dae1dbe1dce1dde1dee1dfe1e0e1e1e1e2e1e3e1e4e1e5e1e6e1e7e1e8e1e9e1eae1ebe1ece1ede1eee1efe1f0e1f1e1f2e1f3e1f4e1f5e1f6e1f7e1f8e1f9e1fae1fbe1fce1fde1fee1ffe100e201e202e203e204e205e206e207e208e209e20ae20be20ce20de20ee20fe210e211e212e213e214e215e216e217e218e219e21ae21be21ce21de21ee21fe220e221e222e223e224e225e226e227e228e229e22ae22be22ce22de22ee22fe230e231e232e233e234e235e236e237e238e239e23ae23be23ce23de23ee23fe240e241e242e243e244e245e246e247e248e249e24ae24be24ce24de24ee24fe250e251e252e253e254e255e256e257e258e259e25ae25be25ce25de25ee25fe260e261e262e263e264e265e266e267e268e269e26ae26be26ce26de26ee26fe270e271e272e273e274e275e276e277e278e279e27ae27be27ce27de27ee27fe280e281e282e283e284e285e286e287e288e289e28ae28be28ce28de28ee28fe290e291e292e293e294e295e296e297e298e299e29ae29be29ce29de29ee29fe2a0e2a1e2a2e2a3e2a4e2a5e2a6e2a7e2a8e2a9e2aae2abe2ace2ade2aee2afe2b0e2b1e2b2e2b3e2b4e2b5e2b6e2b7e2b8e2b9e2bae2bbe2bce2bde2bee2bfe2c0e2c1e2c2e2c3e2c4e2c5e2c6e2c7e2c8e2c9e2cae2cbe2cce2cde2cee2cfe2d0e2d1e2d2e2d3e2d4e2d5e2d6e2d7e2d8e2d9e2dae2dbe2dce2dde2dee2dfe2e0e2e1e2e2e2e3e2e4e2e5e2e6e2e7e2e8e2e9e2eae2ebe2ece2ede2eee2efe2f0e2f1e2f2e2f3e2f4e2f5e2f6e2f7e2f8e2f9e2fae2fbe2fce2fde2fee2ffe200e301e302e303e304e305e306e307e308e309e30ae30be30ce30de30ee30fe310e311e312e313e314e315e316e317e318e319e31ae31be31ce31de31ee31fe320e321e322e323e324e325e326e327e328e329e32ae32be32ce32de32ee32fe330e331e332e333e334e335e336e337e338e339e33ae33be33ce33de33ee33fe340e341e342e343e344e345e346e347e348e349e34ae34be34ce34de34ee34fe350e351e352e353e354e355e356e357e358e359e35ae35be35ce35de35ee35fe360e361e362e363e364e365e366e367e368e369e36ae36be36ce36de36ee36fe370e371e372e373e374e375e376e377e378e379e37ae37be37ce37de37ee37fe380e381e382e383e384e385e386e387e388e389e38ae38be38ce38de38ee38fe390e391e392e393e394e395e396e397e398e399e39ae39be39ce39de39ee39fe3a0e3a1e3a2e3a3e3a4e3a5e3a6e3a7e3a8e3a9e3aae3abe3ace3ade3aee3afe3b0e3b1e3b2e3b3e3b4e3b5e3b6e3b7e3b8e3b9e3bae3bbe3bce3bde3bee3bfe3c0e3c1e3c2e3c3e3c4e3c5e3c6e3c7e3c8e3c9e3cae3cbe3cce3cde3cee3cfe3d0e3d1e3d2e3d3e3d4e3d5e3d6e3d7e3d8e3d9e3dae3dbe3dce3dde3dee3dfe3e0e3e1e3e2e3e3e3e4e3e5e3e6e3e7e3e8e3e9e3eae3ebe3ece3ede3eee3efe3f0e3f1e3f2e3f3e3f4e3f5e3f6e3f7e3f8e3f9e3fae3fbe3fce3fde3fee3ffe300e401e402e403e404e405e406e407e408e409e40ae40be40ce40de40ee40fe410e411e412e413e414e415e416e417e418e419e41ae41be41ce41de41ee41fe420e421e422e423e424e425e426e427e428e429e42ae42be42ce42de42ee42fe430e431e432e433e434e435e436e437e438e439e43ae43be43ce43de43ee43fe440e441e442e443e444e445e446e447e448e449e44ae44be44ce44de44ee44fe450e451e452e453e454e455e456e457e458e459e45ae45be45ce45de45ee45fe460e461e462e463e464e465e466e467e468e469e46ae46be46ce46de46ee46fe470e471e472e473e474e475e476e477e478e479e47ae47be47ce47de47ee47fe480e481e482e483e484e485e486e487e488e489e48ae48be48ce48de48ee48fe490e491e492e493e494e495e496e497e498e499e49ae49be49ce49de49ee49fe4a0e4a1e4a2e4a3e4a4e4a5e4a6e4a7e4a8e4a9e4aae4abe4ace4ade4aee4afe4b0e4b1e4b2e4b3e4b4e4b5e4b6e4b7e4b8e4b9e4bae4bbe4bce4bde4bee4bfe4c0e4c1e4c2e4c3e4c4e4c5e4c6e4c7e4c8e4c9e4cae4cbe4cce4cde4cee4cfe4d0e4d1e4d2e4d3e4d4e4d5e4d6e4d7e4d8e4d9e4dae4dbe4dce4dde4dee4dfe4e0e4e1e4e2e4e3e4e4e4e5e4e6e4e7e4e8e4e9e4eae4ebe4ece4ede4eee4efe4f0e4f1e4f2e4f3e4f4e4f5e4f6e4f7e4f8e4f9e4fae4fbe4fce4fde4fee4ffe400e501e502e503e504e505e506e507e508e509e50ae50be50ce50de50ee50fe510e511e512e513e514e515e516e517e518e519e51ae51be51ce51de51ee51fe520e521e522e523e524e525e526e527e528e529e52ae52be52ce52de52ee52fe530e531e532e533e534e535e536e537e538e539e53ae53be53ce53de53ee53fe540e541e542e543e544e545e546e547e548e549e54ae54be54ce54de54ee54fe550e551e552e553e554e555e556e557e558e559e55ae55be55ce55de55ee55fe560e561e562e563e564e565e566e567e568e569e56ae56be56ce56de56ee56fe570e571e572e573e574e575e576e577e578e579e57ae57be57ce57de57ee57fe580e581e582e583e584e585e586e587e588e589e58ae58be58ce58de58ee58fe590e591e592e593e594e595e596e597e598e599e59ae59be59ce59de59ee59fe5a0e5a1e5a2e5a3e5a4e5a5e5a6e5a7e5a8e5a9e5aae5abe5ace5ade5aee5afe5b0e5b1e5b2e5b3e5b4e5b5e5b6e5b7e5b8e5b9e5bae5bbe5bce5bde5bee5bfe5c0e5c1e5c2e5c3e5c4e5c5e5c6e5c7e5c8e5c9e5cae5cbe5cce5cde5cee5cfe5d0e5d1e5d2e5d3e5d4e5d5e5d6e5d7e5d8e5d9e5dae5dbe5dce5dde5dee5dfe5e0e5e1e5e2e5e3e5e4e5e5e5e6e5e7e5e8e5e9e5eae5ebe5ece5ede5eee5efe5f0e5f1e5f2e5f3e5f4e5f5e5f6e5f7e5f8e5f9e5fae5fbe5fce5fde5fee5ffe500e601e602e603e604e605e606e607e608e609e60ae60be60ce60de60ee60fe610e611e612e613e614e615e616e617e618e619e61ae61be61ce61de61ee61fe620e621e622e623e624e625e626e627e628e629e62ae62be62ce62de62ee62fe630e631e632e633e634e635e636e637e638e639e63ae63be63ce63de63ee63fe640e641e642e643e644e645e646e647e648e649e64ae64be64ce64de64ee64fe650e651e652e653e654e655e656e657e658e659e65ae65be65ce65de65ee65fe660e661e662e663e664e665e666e667e668e669e66ae66be66ce66de66ee66fe670e671e672e673e674e675e676e677e678e679e67ae67be67ce67de67ee67fe680e681e682e683e684e685e686e687e688e689e68ae68be68ce68de68ee68fe690e691e692e693e694e695e696e697e698e699e69ae69be69ce69de69ee69fe6a0e6a1e6a2e6a3e6a4e6a5e6a6e6a7e6a8e6a9e6aae6abe6ace6ade6aee6afe6b0e6b1e6b2e6b3e6b4e6b5e6b6e6b7e6b8e6b9e6bae6bbe6bce6bde6bee6bfe6c0e6c1e6c2e6c3e6c4e6c5e6c6e6c7e6c8e6c9e6cae6cbe6cce6cde6cee6cfe6d0e6d1e6d2e6d3e6d4e6d5e6d6e6d7e6d8e6d9e6dae6dbe6dce6dde6dee6dfe6e0e6e1e6e2e6e3e6e4e6e5e6e6e6e7e6e8e6e9e6eae6ebe6ece6ede6eee6efe6f0e6f1e6f2e6f3e6f4e6f5e6f6e6f7e6f8e6f9e6fae6fbe6fce6fde6fee6ffe600e701e702e703e704e705e706e707e708e709e70ae70be70ce70de70ee70fe710e711e712e713e714e715e716e717e718e719e71ae71be71ce71de71ee71fe720e721e722e723e724e725e726e727e728e729e72ae72be72ce72de72ee72fe730e731e732e733e734e735e736e737e738e739e73ae73be73ce73de73ee73fe740e741e742e743e744e745e746e747e748e749e74ae74be74ce74de74ee74fe750e751e752e753e754e755e756e757e758e759e75ae75be75ce75de75ee75fe760e761e762e763e764e765e766e767e768e769e76ae76be76ce76de76ee76fe770e771e772e773e774e775e776e777e778e779e77ae77be77ce77de77ee77fe780e781e782e783e784e785e786e787e788e789e78ae78be78ce78de78ee78fe790e791e792e793e794e795e796e797e798e799e79ae79be79ce79de79ee79fe7a0e7a1e7a2e7a3e7a4e7a5e7a6e7a7e7a8e7a9e7aae7abe7ace7ade7aee7afe7b0e7b1e7b2e7b3e7b4e7b5e7b6e7b7e7b8e7b9e7bae7bbe7bce7bde7bee7bfe7c0e7c1e7c2e7c3e7c4e7c5e7c6e7c7e7c8e7c9e7cae7cbe7cce7cde7cee7cfe7d0e7d1e7d2e7d3e7d4e7d5e7d6e7d7e7d8e7d9e7dae7dbe7dce7dde7dee7dfe7e0e7e1e7e2e7e3e7e4e7e5e7e6e7e7e7e8e7e9e7eae7ebe7ece7ede7eee7efe7f0e7f1e7f2e7f3e7f4e7f5e7f6e7f7e7f8e7f9e7fae7fbe7fce7fde7fee7ffe700e801e802e803e804e805e806e807e808e809e80ae80be80ce80de80ee80fe810e811e812e813e814e815e816e817e818e819e81ae81be81ce81de81ee81fe820e821e822e823e824e825e826e827e828e829e82ae82be82ce82de82ee82fe830e831e832e833e834e835e836e837e838e839e83ae83be83ce83de83ee83fe840e841e842e843e844e845e846e847e848e849e84ae84be84ce84de84ee84fe850e851e852e853e854e855e856e857e858e859e85ae85be85ce85de85ee85fe860e861e862e863e864e865e866e867e868e869e86ae86be86ce86de86ee86fe870e871e872e873e874e875e876e877e878e879e87ae87be87ce87de87ee87fe880e881e882e883e884e885e886e887e888e889e88ae88be88ce88de88ee88fe890e891e892e893e894e895e896e897e898e899e89ae89be89ce89de89ee89fe8a0e8a1e8a2e8a3e8a4e8a5e8a6e8a7e8a8e8a9e8aae8abe8ace8ade8aee8afe8b0e8b1e8b2e8b3e8b4e8b5e8b6e8b7e8b8e8b9e8bae8bbe8bce8bde8bee8bfe8c0e8c1e8c2e8c3e8c4e8c5e8c6e8c7e8c8e8c9e8cae8cbe8cce8cde8cee8cfe8d0e8d1e8d2e8d3e8d4e8d5e8d6e8d7e8d8e8d9e8dae8dbe8dce8dde8dee8dfe8e0e8e1e8e2e8e3e8e4e8e5e8e6e8e7e8e8e8e9e8eae8ebe8ece8ede8eee8efe8f0e8f1e8f2e8f3e8f4e8f5e8f6e8f7e8f8e8f9e8fae8fbe8fce8fde8fee8ffe800e901e902e903e904e905e906e907e908e909e90ae90be90ce90de90ee90fe910e911e912e913e914e915e916e917e918e919e91ae91be91ce91de91ee91fe920e921e922e923e924e925e926e927e928e929e92ae92be92ce92de92ee92fe930e931e932e933e934e935e936e937e938e939e93ae93be93ce93de93ee93fe940e941e942e943e944e945e946e947e948e949e94ae94be94ce94de94ee94fe950e951e952e953e954e955e956e957e958e959e95ae95be95ce95de95ee95fe960e961e962e963e964e965e966e967e968e969e96ae96be96ce96de96ee96fe970e971e972e973e974e975e976e977e978e979e97ae97be97ce97de97ee97fe980e981e982e983e984e985e986e987e988e989e98ae98be98ce98de98ee98fe990e991e992e993e994e995e996e997e998e999e99ae99be99ce99de99ee99fe9a0e9a1e9a2e9a3e9a4e9a5e9a6e9a7e9a8e9a9e9aae9abe9ace9ade9aee9afe9b0e9b1e9b2e9b3e9b4e9b5e9b6e9b7e9b8e9b9e9bae9bbe9bce9bde9bee9bfe9c0e9c1e9c2e9c3e9c4e9c5e9c6e9c7e9c8e9c9e9cae9cbe9cce9cde9cee9cfe9d0e9d1e9d2e9d3e9d4e9d5e9d6e9d7e9d8e9d9e9dae9dbe9dce9dde9dee9dfe9e0e9e1e9e2e9e3e9e4e9e5e9e6e9e7e9e8e9e9e9eae9ebe9ece9ede9eee9efe9f0e9f1e9f2e9f3e9f4e9f5e9f6e9f7e9f8e9f9e9fae9fbe9fce9fde9fee9ffe900ea01ea02ea03ea04ea05ea06ea07ea08ea09ea0aea0bea0cea0dea0eea0fea10ea11ea12ea13ea14ea15ea16ea17ea18ea19ea1aea1bea1cea1dea1eea1fea20ea21ea22ea23ea24ea25ea26ea27ea28ea29ea2aea2bea2cea2dea2eea2fea30ea31ea32ea33ea34ea35ea36ea37ea38ea39ea3aea3bea3cea3dea3eea3fea40ea41ea42ea43ea44ea45ea46ea47ea48ea49ea4aea4bea4cea4dea4eea4fea50ea51ea52ea53ea54ea55ea56ea57ea58ea59ea5aea5bea5cea5dea5eea5fea60ea61ea62ea63ea64ea65ea66ea67ea68ea69ea6aea6bea6cea6dea6eea6fea70ea71ea72ea73ea74ea75ea76ea77ea78ea79ea7aea7bea7cea7dea7eea7fea80ea81ea82ea83ea84ea85ea86ea87ea88ea89ea8aea8bea8cea8dea8eea8fea90ea91ea92ea93ea94ea95ea96ea97ea98ea99ea9aea9bea9cea9dea9eea9feaa0eaa1eaa2eaa3eaa4eaa5eaa6eaa7eaa8eaa9eaaaeaabeaaceaadeaaeeaafeab0eab1eab2eab3eab4eab5eab6eab7eab8eab9eabaeabbeabceabdeabeeabfeac0eac1eac2eac3eac4eac5eac6eac7eac8eac9eacaeacbeacceacdeaceeacfead0ead1ead2ead3ead4ead5ead6ead7ead8ead9eadaeadbeadceaddeadeeadfeae0eae1eae2eae3eae4eae5eae6eae7eae8eae9eaeaeaebeaeceaedeaeeeaefeaf0eaf1eaf2eaf3eaf4eaf5eaf6eaf7eaf8eaf9eafaeafbeafceafdeafeeaffea00eb01eb02eb03eb04eb05eb06eb07eb08eb09eb0aeb0beb0ceb0deb0eeb0feb10eb11eb12eb13eb14eb15eb16eb17eb18eb19eb1aeb1beb1ceb1deb1eeb1feb20eb21eb22eb23eb24eb25eb26eb27eb28eb29eb2aeb2beb2ceb2deb2eeb2feb30eb31eb32eb33eb34eb35eb36eb37eb38eb39eb3aeb3beb3ceb3deb3eeb3feb40eb41eb42eb43eb44eb45eb46eb47eb48eb49eb4aeb4beb4ceb4deb4eeb4feb50eb51eb52eb53eb54eb55eb56eb57eb58eb59eb5aeb5beb5ceb5deb5eeb5feb60eb61eb62eb63eb64eb65eb66eb67eb68eb69eb6aeb6beb6ceb6deb6eeb6feb70eb71eb72eb73eb74eb75eb76eb77eb78eb79eb7aeb7beb7ceb7deb7eeb7feb80eb81eb82eb83eb84eb85eb86eb87eb88eb89eb8aeb8beb8ceb8deb8eeb8feb90eb91eb92eb93eb94eb95eb96eb97eb98eb99eb9aeb9beb9ceb9deb9eeb9feba0eba1eba2eba3eba4eba5eba6eba7eba8eba9ebaaebabebacebadebaeebafebb0ebb1ebb2ebb3ebb4ebb5ebb6ebb7ebb8ebb9ebbaebbbebbcebbdebbeebbfebc0ebc1ebc2ebc3ebc4ebc5ebc6ebc7ebc8ebc9ebcaebcbebccebcdebceebcfebd0ebd1ebd2ebd3ebd4ebd5ebd6ebd7ebd8ebd9ebdaebdbebdcebddebdeebdfebe0ebe1ebe2ebe3ebe4ebe5ebe6ebe7ebe8ebe9ebeaebebebecebedebeeebefebf0ebf1ebf2ebf3ebf4ebf5ebf6ebf7ebf8ebf9ebfaebfbebfcebfdebfeebffeb00ec01ec02ec03ec04ec05ec06ec07ec08ec09ec0aec0bec0cec0dec0eec0fec10ec11ec12ec13ec14ec15ec16ec17ec18ec19ec1aec1bec1cec1dec1eec1fec20ec21ec22ec23ec24ec25ec26ec27ec28ec29ec2aec2bec2cec2dec2eec2fec30ec31ec32ec33ec34ec35ec36ec37ec38ec39ec3aec3bec3cec3dec3eec3fec40ec41ec42ec43ec44ec45ec46ec47ec48ec49ec4aec4bec4cec4dec4eec4fec50ec51ec52ec53ec54ec55ec56ec57ec58ec59ec5aec5bec5cec5dec5eec5fec60ec61ec62ec63ec64ec65ec66ec67ec68ec69ec6aec6bec6cec6dec6eec6fec70ec71ec72ec73ec74ec75ec76ec77ec78ec79ec7aec7bec7cec7dec7eec7fec80ec81ec82ec83ec84ec85ec86ec87ec88ec89ec8aec8bec8cec8dec8eec8fec90ec91ec92ec93ec94ec95ec96ec97ec98ec99ec9aec9bec9cec9dec9eec9feca0eca1eca2eca3eca4eca5eca6eca7eca8eca9ecaaecabecacecadecaeecafecb0ecb1ecb2ecb3ecb4ecb5ecb6ecb7ecb8ecb9ecbaecbbecbcecbdecbeecbfecc0ecc1ecc2ecc3ecc4ecc5ecc6ecc7ecc8ecc9eccaeccbeccceccdecceeccfecd0ecd1ecd2ecd3ecd4ecd5ecd6ecd7ecd8ecd9ecdaecdbecdcecddecdeecdfece0ece1ece2ece3ece4ece5ece6ece7ece8ece9eceaecebecececedeceeecefecf0ecf1ecf2ecf3ecf4ecf5ecf6ecf7ecf8ecf9ecfaecfbecfcecfdecfeecffec00ed01ed02ed03ed04ed05ed06ed07ed08ed09ed0aed0bed0ced0ded0eed0fed10ed11ed12ed13ed14ed15ed16ed17ed18ed19ed1aed1bed1ced1ded1eed1fed20ed21ed22ed23ed24ed25ed26ed27ed28ed29ed2aed2bed2ced2ded2eed2fed30ed31ed32ed33ed34ed35ed36ed37ed38ed39ed3aed3bed3ced3ded3eed3fed40ed41ed42ed43ed44ed45ed46ed47ed48ed49ed4aed4bed4ced4ded4eed4fed50ed51ed52ed53ed54ed55ed56ed57ed58ed59ed5aed5bed5ced5ded5eed5fed60ed61ed62ed63ed64ed65ed66ed67ed68ed69ed6aed6bed6ced6ded6eed6fed70ed71ed72ed73ed74ed75ed76ed77ed78ed79ed7aed7bed7ced7ded7eed7fed80ed81ed82ed83ed84ed85ed86ed87ed88ed89ed8aed8bed8ced8ded8eed8fed90ed91ed92ed93ed94ed95ed96ed97ed98ed99ed9aed9bed9ced9ded9eed9feda0eda1eda2eda3eda4eda5eda6eda7eda8eda9edaaedabedacedadedaeedafedb0edb1edb2edb3edb4edb5edb6edb7edb8edb9edbaedbbedbcedbdedbeedbfedc0edc1edc2edc3edc4edc5edc6edc7edc8edc9edcaedcbedccedcdedceedcfedd0edd1edd2edd3edd4edd5edd6edd7edd8edd9eddaeddbeddcedddeddeeddfede0ede1ede2ede3ede4ede5ede6ede7ede8ede9edeaedebedecedededeeedefedf0edf1edf2edf3edf4edf5edf6edf7edf8edf9edfaedfbedfcedfdedfeedffed00ee01ee02ee03ee04ee05ee06ee07ee08ee09ee0aee0bee0cee0dee0eee0fee10ee11ee12ee13ee14ee15ee16ee17ee18ee19ee1aee1bee1cee1dee1eee1fee20ee21ee22ee23ee24ee25ee26ee27ee28ee29ee2aee2bee2cee2dee2eee2fee30ee31ee32ee33ee34ee35ee36ee37ee38ee39ee3aee3bee3cee3dee3eee3fee40ee41ee42ee43ee44ee45ee46ee47ee48ee49ee4aee4bee4cee4dee4eee4fee50ee51ee52ee53ee54ee55ee56ee57ee58ee59ee5aee5bee5cee5dee5eee5fee60ee61ee62ee63ee64ee65ee66ee67ee68ee69ee6aee6bee6cee6dee6eee6fee70ee71ee72ee73ee74ee75ee76ee77ee78ee79ee7aee7bee7cee7dee7eee7fee80ee81ee82ee83ee84ee85ee86ee87ee88ee89ee8aee8bee8cee8dee8eee8fee90ee91ee92ee93ee94ee95ee96ee97ee98ee99ee9aee9bee9cee9dee9eee9feea0eea1eea2eea3eea4eea5eea6eea7eea8eea9eeaaeeabeeaceeadeeaeeeafeeb0eeb1eeb2eeb3eeb4eeb5eeb6eeb7eeb8eeb9eebaeebbeebceebdeebeeebfeec0eec1eec2eec3eec4eec5eec6eec7eec8eec9eecaeecbeecceecdeeceeecfeed0eed1eed2eed3eed4eed5eed6eed7eed8eed9eedaeedbeedceeddeedeeedfeee0eee1eee2eee3eee4eee5eee6eee7eee8eee9eeeaeeebeeeceeedeeeeeeefeef0eef1eef2eef3eef4eef5eef6eef7eef8eef9eefaeefbeefceefdeefeeeffee00ef01ef02ef03ef04ef05ef06ef07ef08ef09ef0aef0bef0cef0def0eef0fef10ef11ef12ef13ef14ef15ef16ef17ef18ef19ef1aef1bef1cef1def1eef1fef20ef21ef22ef23ef24ef25ef26ef27ef28ef29ef2aef2bef2cef2def2eef2fef30ef31ef32ef33ef34ef35ef36ef37ef38ef39ef3aef3bef3cef3def3eef3fef40ef41ef42ef43ef44ef45ef46ef47ef48ef49ef4aef4bef4cef4def4eef4fef50ef51ef52ef53ef54ef55ef56ef57ef58ef59ef5aef5bef5cef5def5eef5fef60ef61ef62ef63ef64ef65ef66ef67ef68ef69ef6aef6bef6cef6def6eef6fef70ef71ef72ef73ef74ef75ef76ef77ef78ef79ef7aef7bef7cef7def7eef7fef80ef81ef82ef83ef84ef85ef86ef87ef88ef89ef8aef8bef8cef8def8eef8fef90ef91ef92ef93ef94ef95ef96ef97ef98ef99ef9aef9bef9cef9def9eef9fefa0efa1efa2efa3efa4efa5efa6efa7efa8efa9efaaefabefacefadefaeefafefb0efb1efb2efb3efb4efb5efb6efb7efb8efb9efbaefbbefbcefbdefbeefbfefc0efc1efc2efc3efc4efc5efc6efc7efc8efc9efcaefcbefccefcdefceefcfefd0efd1efd2efd3efd4efd5efd6efd7efd8efd9efdaefdbefdcefddefdeefdfefe0efe1efe2efe3efe4efe5efe6efe7efe8efe9efeaefebefecefedefeeefefeff0eff1eff2eff3eff4eff5eff6eff7eff8eff9effaeffbeffceffdeffeefffef00f001f002f003f004f005f006f007f008f009f00af00bf00cf00df00ef00ff010f011f012f013f014f015f016f017f018f019f01af01bf01cf01df01ef01ff020f021f022f023f024f025f026f027f028f029f02af02bf02cf02df02ef02ff030f031f032f033f034f035f036f037f038f039f03af03bf03cf03df03ef03ff040f041f042f043f044f045f046f047f048f049f04af04bf04cf04df04ef04ff050f051f052f053f054f055f056f057f058f059f05af05bf05cf05df05ef05ff060f061f062f063f064f065f066f067f068f069f06af06bf06cf06df06ef06ff070f071f072f073f074f075f076f077f078f079f07af07bf07cf07df07ef07ff080f081f082f083f084f085f086f087f088f089f08af08bf08cf08df08ef08ff090f091f092f093f094f095f096f097f098f099f09af09bf09cf09df09ef09ff0a0f0a1f0a2f0a3f0a4f0a5f0a6f0a7f0a8f0a9f0aaf0abf0acf0adf0aef0aff0b0f0b1f0b2f0b3f0b4f0b5f0b6f0b7f0b8f0b9f0baf0bbf0bcf0bdf0bef0bff0c0f0c1f0c2f0c3f0c4f0c5f0c6f0c7f0c8f0c9f0caf0cbf0ccf0cdf0cef0cff0d0f0d1f0d2f0d3f0d4f0d5f0d6f0d7f0d8f0d9f0daf0dbf0dcf0ddf0def0dff0e0f0e1f0e2f0e3f0e4f0e5f0e6f0e7f0e8f0e9f0eaf0ebf0ecf0edf0eef0eff0f0f0f1f0f2f0f3f0f4f0f5f0f6f0f7f0f8f0f9f0faf0fbf0fcf0fdf0fef0fff000f101f102f103f104f105f106f107f108f109f10af10bf10cf10df10ef10ff110f111f112f113f114f115f116f117f118f119f11af11bf11cf11df11ef11ff120f121f122f123f124f125f126f127f128f129f12af12bf12cf12df12ef12ff130f131f132f133f134f135f136f137f138f139f13af13bf13cf13df13ef13ff140f141f142f143f144f145f146f147f148f149f14af14bf14cf14df14ef14ff150f151f152f153f154f155f156f157f158f159f15af15bf15cf15df15ef15ff160f161f162f163f164f165f166f167f168f169f16af16bf16cf16df16ef16ff170f171f172f173f174f175f176f177f178f179f17af17bf17cf17df17ef17ff180f181f182f183f184f185f186f187f188f189f18af18bf18cf18df18ef18ff190f191f192f193f194f195f196f197f198f199f19af19bf19cf19df19ef19ff1a0f1a1f1a2f1a3f1a4f1a5f1a6f1a7f1a8f1a9f1aaf1abf1acf1adf1aef1aff1b0f1b1f1b2f1b3f1b4f1b5f1b6f1b7f1b8f1b9f1baf1bbf1bcf1bdf1bef1bff1c0f1c1f1c2f1c3f1c4f1c5f1c6f1c7f1c8f1c9f1caf1cbf1ccf1cdf1cef1cff1d0f1d1f1d2f1d3f1d4f1d5f1d6f1d7f1d8f1d9f1daf1dbf1dcf1ddf1def1dff1e0f1e1f1e2f1e3f1e4f1e5f1e6f1e7f1e8f1e9f1eaf1ebf1ecf1edf1eef1eff1f0f1f1f1f2f1f3f1f4f1f5f1f6f1f7f1f8f1f9f1faf1fbf1fcf1fdf1fef1fff100f201f202f203f204f205f206f207f208f209f20af20bf20cf20df20ef20ff210f211f212f213f214f215f216f217f218f219f21af21bf21cf21df21ef21ff220f221f222f223f224f225f226f227f228f229f22af22bf22cf22df22ef22ff230f231f232f233f234f235f236f237f238f239f23af23bf23cf23df23ef23ff240f241f242f243f244f245f246f247f248f249f24af24bf24cf24df24ef24ff250f251f252f253f254f255f256f257f258f259f25af25bf25cf25df25ef25ff260f261f262f263f264f265f266f267f268f269f26af26bf26cf26df26ef26ff270f271f272f273f274f275f276f277f278f279f27af27bf27cf27df27ef27ff280f281f282f283f284f285f286f287f288f289f28af28bf28cf28df28ef28ff290f291f292f293f294f295f296f297f298f299f29af29bf29cf29df29ef29ff2a0f2a1f2a2f2a3f2a4f2a5f2a6f2a7f2a8f2a9f2aaf2abf2acf2adf2aef2aff2b0f2b1f2b2f2b3f2b4f2b5f2b6f2b7f2b8f2b9f2baf2bbf2bcf2bdf2bef2bff2c0f2c1f2c2f2c3f2c4f2c5f2c6f2c7f2c8f2c9f2caf2cbf2ccf2cdf2cef2cff2d0f2d1f2d2f2d3f2d4f2d5f2d6f2d7f2d8f2d9f2daf2dbf2dcf2ddf2def2dff2e0f2e1f2e2f2e3f2e4f2e5f2e6f2e7f2e8f2e9f2eaf2ebf2ecf2edf2eef2eff2f0f2f1f2f2f2f3f2f4f2f5f2f6f2f7f2f8f2f9f2faf2fbf2fcf2fdf2fef2fff200f301f302f303f304f305f306f307f308f309f30af30bf30cf30df30ef30ff310f311f312f313f314f315f316f317f318f319f31af31bf31cf31df31ef31ff320f321f322f323f324f325f326f327f328f329f32af32bf32cf32df32ef32ff330f331f332f333f334f335f336f337f338f339f33af33bf33cf33df33ef33ff340f341f342f343f344f345f346f347f348f349f34af34bf34cf34df34ef34ff350f351f352f353f354f355f356f357f358f359f35af35bf35cf35df35ef35ff360f361f362f363f364f365f366f367f368f369f36af36bf36cf36df36ef36ff370f371f372f373f374f375f376f377f378f379f37af37bf37cf37df37ef37ff380f381f382f383f384f385f386f387f388f389f38af38bf38cf38df38ef38ff390f391f392f393f394f395f396f397f398f399f39af39bf39cf39df39ef39ff3a0f3a1f3a2f3a3f3a4f3a5f3a6f3a7f3a8f3a9f3aaf3abf3acf3adf3aef3aff3b0f3b1f3b2f3b3f3b4f3b5f3b6f3b7f3b8f3b9f3baf3bbf3bcf3bdf3bef3bff3c0f3c1f3c2f3c3f3c4f3c5f3c6f3c7f3c8f3c9f3caf3cbf3ccf3cdf3cef3cff3d0f3d1f3d2f3d3f3d4f3d5f3d6f3d7f3d8f3d9f3daf3dbf3dcf3ddf3def3dff3e0f3e1f3e2f3e3f3e4f3e5f3e6f3e7f3e8f3e9f3eaf3ebf3ecf3edf3eef3eff3f0f3f1f3f2f3f3f3f4f3f5f3f6f3f7f3f8f3f9f3faf3fbf3fcf3fdf3fef3fff300f401f402f403f404f405f406f407f408f409f40af40bf40cf40df40ef40ff410f411f412f413f414f415f416f417f418f419f41af41bf41cf41df41ef41ff420f421f422f423f424f425f426f427f428f429f42af42bf42cf42df42ef42ff430f431f432f433f434f435f436f437f438f439f43af43bf43cf43df43ef43ff440f441f442f443f444f445f446f447f448f449f44af44bf44cf44df44ef44ff450f451f452f453f454f455f456f457f458f459f45af45bf45cf45df45ef45ff460f461f462f463f464f465f466f467f468f469f46af46bf46cf46df46ef46ff470f471f472f473f474f475f476f477f478f479f47af47bf47cf47df47ef47ff480f481f482f483f484f485f486f487f488f489f48af48bf48cf48df48ef48ff490f491f492f493f494f495f496f497f498f499f49af49bf49cf49df49ef49ff4a0f4a1f4a2f4a3f4a4f4a5f4a6f4a7f4a8f4a9f4aaf4abf4acf4adf4aef4aff4b0f4b1f4b2f4b3f4b4f4b5f4b6f4b7f4b8f4b9f4baf4bbf4bcf4bdf4bef4bff4c0f4c1f4c2f4c3f4c4f4c5f4c6f4c7f4c8f4c9f4caf4cbf4ccf4cdf4cef4cff4d0f4d1f4d2f4d3f4d4f4d5f4d6f4d7f4d8f4d9f4daf4dbf4dcf4ddf4def4dff4e0f4e1f4e2f4e3f4e4f4e5f4e6f4e7f4e8f4e9f4eaf4ebf4ecf4edf4eef4eff4f0f4f1f4f2f4f3f4f4f4f5f4f6f4f7f4f8f4f9f4faf4fbf4fcf4fdf4fef4fff400f501f502f503f504f505f506f507f508f509f50af50bf50cf50df50ef50ff510f511f512f513f514f515f516f517f518f519f51af51bf51cf51df51ef51ff520f521f522f523f524f525f526f527f528f529f52af52bf52cf52df52ef52ff530f531f532f533f534f535f536f537f538f539f53af53bf53cf53df53ef53ff540f541f542f543f544f545f546f547f548f549f54af54bf54cf54df54ef54ff550f551f552f553f554f555f556f557f558f559f55af55bf55cf55df55ef55ff560f561f562f563f564f565f566f567f568f569f56af56bf56cf56df56ef56ff570f571f572f573f574f575f576f577f578f579f57af57bf57cf57df57ef57ff580f581f582f583f584f585f586f587f588f589f58af58bf58cf58df58ef58ff590f591f592f593f594f595f596f597f598f599f59af59bf59cf59df59ef59ff5a0f5a1f5a2f5a3f5a4f5a5f5a6f5a7f5a8f5a9f5aaf5abf5acf5adf5aef5aff5b0f5b1f5b2f5b3f5b4f5b5f5b6f5b7f5b8f5b9f5baf5bbf5bcf5bdf5bef5bff5c0f5c1f5c2f5c3f5c4f5c5f5c6f5c7f5c8f5c9f5caf5cbf5ccf5cdf5cef5cff5d0f5d1f5d2f5d3f5d4f5d5f5d6f5d7f5d8f5d9f5daf5dbf5dcf5ddf5def5dff5e0f5e1f5e2f5e3f5e4f5e5f5e6f5e7f5e8f5e9f5eaf5ebf5ecf5edf5eef5eff5f0f5f1f5f2f5f3f5f4f5f5f5f6f5f7f5f8f5f9f5faf5fbf5fcf5fdf5fef5fff500f601f602f603f604f605f606f607f608f609f60af60bf60cf60df60ef60ff610f611f612f613f614f615f616f617f618f619f61af61bf61cf61df61ef61ff620f621f622f623f624f625f626f627f628f629f62af62bf62cf62df62ef62ff630f631f632f633f634f635f636f637f638f639f63af63bf63cf63df63ef63ff640f641f642f643f644f645f646f647f648f649f64af64bf64cf64df64ef64ff650f651f652f653f654f655f656f657f658f659f65af65bf65cf65df65ef65ff660f661f662f663f664f665f666f667f668f669f66af66bf66cf66df66ef66ff670f671f672f673f674f675f676f677f678f679f67af67bf67cf67df67ef67ff680f681f682f683f684f685f686f687f688f689f68af68bf68cf68df68ef68ff690f691f692f693f694f695f696f697f698f699f69af69bf69cf69df69ef69ff6a0f6a1f6a2f6a3f6a4f6a5f6a6f6a7f6a8f6a9f6aaf6abf6acf6adf6aef6aff6b0f6b1f6b2f6b3f6b4f6b5f6b6f6b7f6b8f6b9f6baf6bbf6bcf6bdf6bef6bff6c0f6c1f6c2f6c3f6c4f6c5f6c6f6c7f6c8f6c9f6caf6cbf6ccf6cdf6cef6cff6d0f6d1f6d2f6d3f6d4f6d5f6d6f6d7f6d8f6d9f6daf6dbf6dcf6ddf6def6dff6e0f6e1f6e2f6e3f6e4f6e5f6e6f6e7f6e8f6e9f6eaf6ebf6ecf6edf6eef6eff6f0f6f1f6f2f6f3f6f4f6f5f6f6f6f7f6f8f6f9f6faf6fbf6fcf6fdf6fef6fff600f701f702f703f704f705f706f707f708f709f70af70bf70cf70df70ef70ff710f711f712f713f714f715f716f717f718f719f71af71bf71cf71df71ef71ff720f721f722f723f724f725f726f727f728f729f72af72bf72cf72df72ef72ff730f731f732f733f734f735f736f737f738f739f73af73bf73cf73df73ef73ff740f741f742f743f744f745f746f747f748f749f74af74bf74cf74df74ef74ff750f751f752f753f754f755f756f757f758f759f75af75bf75cf75df75ef75ff760f761f762f763f764f765f766f767f768f769f76af76bf76cf76df76ef76ff770f771f772f773f774f775f776f777f778f779f77af77bf77cf77df77ef77ff780f781f782f783f784f785f786f787f788f789f78af78bf78cf78df78ef78ff790f791f792f793f794f795f796f797f798f799f79af79bf79cf79df79ef79ff7a0f7a1f7a2f7a3f7a4f7a5f7a6f7a7f7a8f7a9f7aaf7abf7acf7adf7aef7aff7b0f7b1f7b2f7b3f7b4f7b5f7b6f7b7f7b8f7b9f7baf7bbf7bcf7bdf7bef7bff7c0f7c1f7c2f7c3f7c4f7c5f7c6f7c7f7c8f7c9f7caf7cbf7ccf7cdf7cef7cff7d0f7d1f7d2f7d3f7d4f7d5f7d6f7d7f7d8f7d9f7daf7dbf7dcf7ddf7def7dff7e0f7e1f7e2f7e3f7e4f7e5f7e6f7e7f7e8f7e9f7eaf7ebf7ecf7edf7eef7eff7f0f7f1f7f2f7f3f7f4f7f5f7f6f7f7f7f8f7f9f7faf7fbf7fcf7fdf7fef7fff700f801f802f803f804f805f806f807f808f809f80af80bf80cf80df80ef80ff810f811f812f813f814f815f816f817f818f819f81af81bf81cf81df81ef81ff820f821f822f823f824f825f826f827f828f829f82af82bf82cf82df82ef82ff830f831f832f833f834f835f836f837f838f839f83af83bf83cf83df83ef83ff840f841f842f843f844f845f846f847f848f849f84af84bf84cf84df84ef84ff850f851f852f853f854f855f856f857f858f859f85af85bf85cf85df85ef85ff860f861f862f863f864f865f866f867f868f869f86af86bf86cf86df86ef86ff870f871f872f873f874f875f876f877f878f879f87af87bf87cf87df87ef87ff880f881f882f883f884f885f886f887f888f889f88af88bf88cf88df88ef88ff890f891f892f893f894f895f896f897f898f899f89af89bf89cf89df89ef89ff8a0f8a1f8a2f8a3f8a4f8a5f8a6f8a7f8a8f8a9f8aaf8abf8acf8adf8aef8aff8b0f8b1f8b2f8b3f8b4f8b5f8b6f8b7f8b8f8b9f8baf8bbf8bcf8bdf8bef8bff8c0f8c1f8c2f8c3f8c4f8c5f8c6f8c7f8c8f8c9f8caf8cbf8ccf8cdf8cef8cff8d0f8d1f8d2f8d3f8d4f8d5f8d6f8d7f8d8f8d9f8daf8dbf8dcf8ddf8def8dff8e0f8e1f8e2f8e3f8e4f8e5f8e6f8e7f8e8f8e9f8eaf8ebf8ecf8edf8eef8eff8f0f8f1f8f2f8f3f8f4f8f5f8f6f8f7f8f8f8f9f8faf8fbf8fcf8fdf8fef8fff800f901f902f903f904f905f906f907f908f909f90af90bf90cf90df90ef90ff910f911f912f913f914f915f916f917f918f919f91af91bf91cf91df91ef91ff920f921f922f923f924f925f926f927f928f929f92af92bf92cf92df92ef92ff930f931f932f933f934f935f936f937f938f939f93af93bf93cf93df93ef93ff940f941f942f943f944f945f946f947f948f949f94af94bf94cf94df94ef94ff950f951f952f953f954f955f956f957f958f959f95af95bf95cf95df95ef95ff960f961f962f963f964f965f966f967f968f969f96af96bf96cf96df96ef96ff970f971f972f973f974f975f976f977f978f979f97af97bf97cf97df97ef97ff980f981f982f983f984f985f986f987f988f989f98af98bf98cf98df98ef98ff990f991f992f993f994f995f996f997f998f999f99af99bf99cf99df99ef99ff9a0f9a1f9a2f9a3f9a4f9a5f9a6f9a7f9a8f9a9f9aaf9abf9acf9adf9aef9aff9b0f9b1f9b2f9b3f9b4f9b5f9b6f9b7f9b8f9b9f9baf9bbf9bcf9bdf9bef9bff9c0f9c1f9c2f9c3f9c4f9c5f9c6f9c7f9c8f9c9f9caf9cbf9ccf9cdf9cef9cff9d0f9d1f9d2f9d3f9d4f9d5f9d6f9d7f9d8f9d9f9daf9dbf9dcf9ddf9def9dff9e0f9e1f9e2f9e3f9e4f9e5f9e6f9e7f9e8f9e9f9eaf9ebf9ecf9edf9eef9eff9f0f9f1f9f2f9f3f9f4f9f5f9f6f9f7f9f8f9f9f9faf9fbf9fcf9fdf9fef9fff900fa01fa02fa03fa04fa05fa06fa07fa08fa09fa0afa0bfa0cfa0dfa0efa0ffa10fa11fa12fa13fa14fa15fa16fa17fa18fa19fa1afa1bfa1cfa1dfa1efa1ffa20fa21fa22fa23fa24fa25fa26fa27fa28fa29fa2afa2bfa2cfa2dfa2efa2ffa30fa31fa32fa33fa34fa35fa36fa37fa38fa39fa3afa3bfa3cfa3dfa3efa3ffa40fa41fa42fa43fa44fa45fa46fa47fa48fa49fa4afa4bfa4cfa4dfa4efa4ffa50fa51fa52fa53fa54fa55fa56fa57fa58fa59fa5afa5bfa5cfa5dfa5efa5ffa60fa61fa62fa63fa64fa65fa66fa67fa68fa69fa6afa6bfa6cfa6dfa6efa6ffa70fa71fa72fa73fa74fa75fa76fa77fa78fa79fa7afa7bfa7cfa7dfa7efa7ffa80fa81fa82fa83fa84fa85fa86fa87fa88fa89fa8afa8bfa8cfa8dfa8efa8ffa90fa91fa92fa93fa94fa95fa96fa97fa98fa99fa9afa9bfa9cfa9dfa9efa9ffaa0faa1faa2faa3faa4faa5faa6faa7faa8faa9faaafaabfaacfaadfaaefaaffab0fab1fab2fab3fab4fab5fab6fab7fab8fab9fabafabbfabcfabdfabefabffac0fac1fac2fac3fac4fac5fac6fac7fac8fac9facafacbfaccfacdfacefacffad0fad1fad2fad3fad4fad5fad6fad7fad8fad9fadafadbfadcfaddfadefadffae0fae1fae2fae3fae4fae5fae6fae7fae8fae9faeafaebfaecfaedfaeefaeffaf0faf1faf2faf3faf4faf5faf6faf7faf8faf9fafafafbfafcfafdfafefafffa00fb01fb02fb03fb04fb05fb06fb07fb08fb09fb0afb0bfb0cfb0dfb0efb0ffb10fb11fb12fb13fb14fb15fb16fb17fb18fb19fb1afb1bfb1cfb1dfb1efb1ffb20fb21fb22fb23fb24fb25fb26fb27fb28fb29fb2afb2bfb2cfb2dfb2efb2ffb30fb31fb32fb33fb34fb35fb36fb37fb38fb39fb3afb3bfb3cfb3dfb3efb3ffb40fb41fb42fb43fb44fb45fb46fb47fb48fb49fb4afb4bfb4cfb4dfb4efb4ffb50fb51fb52fb53fb54fb55fb56fb57fb58fb59fb5afb5bfb5cfb5dfb5efb5ffb60fb61fb62fb63fb64fb65fb66fb67fb68fb69fb6afb6bfb6cfb6dfb6efb6ffb70fb71fb72fb73fb74fb75fb76fb77fb78fb79fb7afb7bfb7cfb7dfb7efb7ffb80fb81fb82fb83fb84fb85fb86fb87fb88fb89fb8afb8bfb8cfb8dfb8efb8ffb90fb91fb92fb93fb94fb95fb96fb97fb98fb99fb9afb9bfb9cfb9dfb9efb9ffba0fba1fba2fba3fba4fba5fba6fba7fba8fba9fbaafbabfbacfbadfbaefbaffbb0fbb1fbb2fbb3fbb4fbb5fbb6fbb7fbb8fbb9fbbafbbbfbbcfbbdfbbefbbffbc0fbc1fbc2fbc3fbc4fbc5fbc6fbc7fbc8fbc9fbcafbcbfbccfbcdfbcefbcffbd0fbd1fbd2fbd3fbd4fbd5fbd6fbd7fbd8fbd9fbdafbdbfbdcfbddfbdefbdffbe0fbe1fbe2fbe3fbe4fbe5fbe6fbe7fbe8fbe9fbeafbebfbecfbedfbeefbeffbf0fbf1fbf2fbf3fbf4fbf5fbf6fbf7fbf8fbf9fbfafbfbfbfcfbfdfbfefbfffb00fc01fc02fc03fc04fc05fc06fc07fc08fc09fc0afc0bfc0cfc0dfc0efc0ffc10fc11fc12fc13fc14fc15fc16fc17fc18fc19fc1afc1bfc1cfc1dfc1efc1ffc20fc21fc22fc23fc24fc25fc26fc27fc28fc29fc2afc2bfc2cfc2dfc2efc2ffc30fc31fc32fc33fc34fc35fc36fc37fc38fc39fc3afc3bfc3cfc3dfc3efc3ffc40fc41fc42fc43fc44fc45fc46fc47fc48fc49fc4afc4bfc4cfc4dfc4efc4ffc50fc51fc52fc53fc54fc55fc56fc57fc58fc59fc5afc5bfc5cfc5dfc5efc5ffc60fc61fc62fc63fc64fc65fc66fc67fc68fc69fc6afc6bfc6cfc6dfc6efc6ffc70fc71fc72fc73fc74fc75fc76fc77fc78fc79fc7afc7bfc7cfc7dfc7efc7ffc80fc81fc82fc83fc84fc85fc86fc87fc88fc89fc8afc8bfc8cfc8dfc8efc8ffc90fc91fc92fc93fc94fc95fc96fc97fc98fc99fc9afc9bfc9cfc9dfc9efc9ffca0fca1fca2fca3fca4fca5fca6fca7fca8fca9fcaafcabfcacfcadfcaefcaffcb0fcb1fcb2fcb3fcb4fcb5fcb6fcb7fcb8fcb9fcbafcbbfcbcfcbdfcbefcbffcc0fcc1fcc2fcc3fcc4fcc5fcc6fcc7fcc8fcc9fccafccbfcccfccdfccefccffcd0fcd1fcd2fcd3fcd4fcd5fcd6fcd7fcd8fcd9fcdafcdbfcdcfcddfcdefcdffce0fce1fce2fce3fce4fce5fce6fce7fce8fce9fceafcebfcecfcedfceefceffcf0fcf1fcf2fcf3fcf4fcf5fcf6fcf7fcf8fcf9fcfafcfbfcfcfcfdfcfefcfffc00fd01fd02fd03fd04fd05fd06fd07fd08fd09fd0afd0bfd0cfd0dfd0efd0ffd10fd11fd12fd13fd14fd15fd16fd17fd18fd19fd1afd1bfd1cfd1dfd1efd1ffd20fd21fd22fd23fd24fd25fd26fd27fd28fd29fd2afd2bfd2cfd2dfd2efd2ffd30fd31fd32fd33fd34fd35fd36fd37fd38fd39fd3afd3bfd3cfd3dfd3efd3ffd40fd41fd42fd43fd44fd45fd46fd47fd48fd49fd4afd4bfd4cfd4dfd4efd4ffd50fd51fd52fd53fd54fd55fd56fd57fd58fd59fd5afd5bfd5cfd5dfd5efd5ffd60fd61fd62fd63fd64fd65fd66fd67fd68fd69fd6afd6bfd6cfd6dfd6efd6ffd70fd71fd72fd73fd74fd75fd76fd77fd78fd79fd7afd7bfd7cfd7dfd7efd7ffd80fd81fd82fd83fd84fd85fd86fd87fd88fd89fd8afd8bfd8cfd8dfd8efd8ffd90fd91fd92fd93fd94fd95fd96fd97fd98fd99fd9afd9bfd9cfd9dfd9efd9ffda0fda1fda2fda3fda4fda5fda6fda7fda8fda9fdaafdabfdacfdadfdaefdaffdb0fdb1fdb2fdb3fdb4fdb5fdb6fdb7fdb8fdb9fdbafdbbfdbcfdbdfdbefdbffdc0fdc1fdc2fdc3fdc4fdc5fdc6fdc7fdc8fdc9fdcafdcbfdccfdcdfdcefdcffdd0fdd1fdd2fdd3fdd4fdd5fdd6fdd7fdd8fdd9fddafddbfddcfdddfddefddffde0fde1fde2fde3fde4fde5fde6fde7fde8fde9fdeafdebfdecfdedfdeefdeffdf0fdf1fdf2fdf3fdf4fdf5fdf6fdf7fdf8fdf9fdfafdfbfdfcfdfdfdfefdfffd00fe01fe02fe03fe04fe05fe06fe07fe08fe09fe0afe0bfe0cfe0dfe0efe0ffe10fe11fe12fe13fe14fe15fe16fe17fe18fe19fe1afe1bfe1cfe1dfe1efe1ffe20fe21fe22fe23fe24fe25fe26fe27fe28fe29fe2afe2bfe2cfe2dfe2efe2ffe30fe31fe32fe33fe34fe35fe36fe37fe38fe39fe3afe3bfe3cfe3dfe3efe3ffe40fe41fe42fe43fe44fe45fe46fe47fe48fe49fe4afe4bfe4cfe4dfe4efe4ffe50fe51fe52fe53fe54fe55fe56fe57fe58fe59fe5afe5bfe5cfe5dfe5efe5ffe60fe61fe62fe63fe64fe65fe66fe67fe68fe69fe6afe6bfe6cfe6dfe6efe6ffe70fe71fe72fe73fe74fe75fe76fe77fe78fe79fe7afe7bfe7cfe7dfe7efe7ffe80fe81fe82fe83fe84fe85fe86fe87fe88fe89fe8afe8bfe8cfe8dfe8efe8ffe90fe91fe92fe93fe94fe95fe96fe97fe98fe99fe9afe9bfe9cfe9dfe9efe9ffea0fea1fea2fea3fea4fea5fea6fea7fea8fea9feaafeabfeacfeadfeaefeaffeb0feb1feb2feb3feb4feb5feb6feb7feb8feb9febafebbfebcfebdfebefebffec0fec1fec2fec3fec4fec5fec6fec7fec8fec9fecafecbfeccfecdfecefecffed0fed1fed2fed3fed4fed5fed6fed7fed8fed9fedafedbfedcfeddfedefedffee0fee1fee2fee3fee4fee5fee6fee7fee8fee9feeafeebfeecfeedfeeefeeffef0fef1fef2fef3fef4fef5fef6fef7fef8fef9fefafefbfefcfefdfefefefffe00ff01ff02ff03ff04ff05ff06ff07ff08ff09ff0aff0bff0cff0dff0eff0fff10ff11ff12ff13ff14ff15ff16ff17ff18ff19ff1aff1bff1cff1dff1eff1fff20ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff3bff3cff3dff3eff3fff40ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff5bff5cff5dff5eff5fff60ff61ff62ff63ff64ff65ff66ff67ff68ff69ff6aff6bff6cff6dff6eff6fff70ff71ff72ff73ff74ff75ff76ff77ff78ff79ff7aff7bff7cff7dff7eff7fff80ff81ff82ff83ff84ff85ff86ff87ff88ff89ff8aff8bff8cff8dff8eff8fff90ff91ff92ff93ff94ff95ff96ff97ff98ff99ff9aff9bff9cff9dff9eff9fffa0ffa1ffa2ffa3ffa4ffa5ffa6ffa7ffa8ffa9ffaaffabffacffadffaeffafffb0ffb1ffb2ffb3ffb4ffb5ffb6ffb7ffb8ffb9ffbaffbbffbcffbdffbeffbfffc0ffc1ffc2ffc3ffc4ffc5ffc6ffc7ffc8ffc9ffcaffcbffccffcdffceffcfffd0ffd1ffd2ffd3ffd4ffd5ffd6ffd7ffd8ffd9ffdaffdbffdcffddffdeffdfffe0ffe1ffe2ffe3ffe4ffe5ffe6ffe7ffe8ffe9ffeaffebffecffedffeeffeffff0fff1fff2fff3fff4fff5fff6fff7fff8fff9fffafffbfffcfffdfffeffffff", 0x20000, 0x89000}, {&(0x7f000003c900)="46494c4530000300000000000000000001000100380001009801000000040000000000000000000004000000000000000800000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd6010070000000000000006c0000000000000600000000000000040324004d0046005400000000000000800000004800000001004000000001000000000000000000120000000000000040000000000000000030010000000000001801000000000000180100000000001113040000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000100000000000000010000000000000001101020000000000ffffffff00"/416, 0x1a0, 0xff000}, {&(0x7f000003cb00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0xff1e0}, {&(0x7f000003cc00)="000000000000000000000000000000000000000000000000000000000000080046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd601001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff0000000000ffffffff00"/384, 0x180, 0xff3e0}, {&(0x7f000003ce00)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0xff5e0}, {&(0x7f000003cf00)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd601000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f0000000000000040000000000000000000040000000000000004000000000000000400000000002140000100000000ffffffff00"/384, 0x180, 0xff7e0}, {&(0x7f000003d100)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0xff9e0}, {&(0x7f000003d200)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000020000000000000010000000480000000000180000000000300000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd6010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000200", 0x220, 0xffbe0}, {&(0x7f000003d500)="0000000000000000000000000000000000000000000000000000000000000200ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x40440, 0xfffe0}, {&(0x7f000007da00)="eb52904e5446532020202000040400000000000000f8000000000000000000000000000080008000ff070000000000000400000000000000ff00000000000000f600000001000000a3b8b20fcf7aa836000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x1ffc00}, {&(0x7f000007db00)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x1ffde0}], 0x0, &(0x7f000007dc00)) 18:58:03 executing program 5: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x80000002, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0}, {&(0x7f0000000300)="66530700ae897094e7b126b097eaa769be6d28c41bd34e677d114b655ef5f0166391468f72e44a260f82e8a9bfc92b1055f69a37237647e9b5e4df73ecd93987b178b1ead5a678216d5d3568da7a4d5cc06f3eb331fea00d9a7664853349fd086c22e3fc56d2b0cae5170871c145045174ad6edb6b0a183dd660ef94af2121945b0d79bb5efadeaad6eaaf0ebc8ae15948eb13fe714f32443c3bdb4a9bb5e2bdfe6c86cc1d507694a8d5c320fb9f7bdfd9f7c25714cf7fdc166f16fa0d74cd1164f949d143aa7692731ed21fb541b7a2cc83eb76be0952aea033004c341407c7d3aaa2af8f7aa96c583d117109a52aa8b0dcff500a40d193c38eda06470002207b50fabdd928d5e311818fcc44d7c660d07819557d8c41ae5902d1edd82810692e5058dd60b89c6bd2ffac1f81895b62c7b2dc4dd672a0ce4f1f7bf6d0e9d1d115", 0x141}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x5) tkill(r0, 0x34) ptrace$cont(0x18, r0, 0x0, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000080)={0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000000), 0x10}, 0x78) sendmsg$inet(0xffffffffffffffff, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000100)=[{&(0x7f0000000080)="4dc3", 0x2}], 0x1}, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) exit_group(0x0) [ 1533.299452][T21357] loop0: detected capacity change from 0 to 8189 18:58:03 executing program 5: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) [ 1533.358657][T21357] ntfs: volume version 3.1. 18:58:04 executing program 3: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) r0 = getpid() sched_setattr(r0, &(0x7f0000000040)={0x38, 0x1, 0x0, 0x0, 0x5}, 0x0) r1 = socket$inet6(0xa, 0x2, 0x0) recvmmsg(r1, &(0x7f0000000840)=[{{0x0, 0x0, 0x0}}], 0x1, 0x0, 0x0) pipe(&(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) fcntl$setpipe(r3, 0x407, 0x0) write(r3, &(0x7f0000000340), 0x41395527) vmsplice(r2, &(0x7f0000000000)=[{&(0x7f0000000500), 0xfffffd93}], 0x1, 0x0) sched_setattr(0x0, &(0x7f0000000080)={0x38, 0x2, 0x0, 0x0, 0x3}, 0x0) syz_genetlink_get_family_id$nl80211(&(0x7f0000000240), 0xffffffffffffffff) r4 = socket$inet6_udp(0xa, 0x2, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={&(0x7f0000000000), 0x2}, 0x0, 0x0, 0x0, 0x0, 0xb4, 0x0, 0x3}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000002c0)={0x1, 0x80, 0x8, 0x6, 0x1, 0x0, 0x0, 0x9, 0x83440, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x7, 0x2, @perf_bp={&(0x7f00000001c0), 0x1}, 0x4001, 0xd1f, 0x9, 0x6, 0x7, 0x9, 0x1f, 0x0, 0x7fffff55, 0x0, 0x2}, 0xffffffffffffffff, 0xa, r2, 0xa) setsockopt$sock_int(0xffffffffffffffff, 0x1, 0x28, &(0x7f0000000140)=0x9000000, 0x4) ioctl$sock_inet6_SIOCSIFADDR(r4, 0x89a1, &(0x7f00000000c0)={@local}) ioctl$sock_inet6_SIOCADDRT(r4, 0x89a0, &(0x7f00000005c0)={@local, @private1, @private0, 0x0, 0x1001}) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x0, 0x8031, 0xffffffffffffffff, 0x0) 18:58:04 executing program 5: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) 18:58:04 executing program 5: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) 18:58:04 executing program 0: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) 18:58:04 executing program 2: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) [ 1533.893270][T30020] Bluetooth: hci1: command 0x040f tx timeout [ 1534.052702][T21388] netlink: 'syz-executor.2': attribute type 11 has an invalid length. [ 1534.251972][T21388] netlink: 'syz-executor.2': attribute type 11 has an invalid length. 18:58:06 executing program 1: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:06 executing program 5: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) 18:58:06 executing program 0: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) 18:58:06 executing program 4: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:06 executing program 2: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) 18:58:06 executing program 3: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) [ 1535.751508][T21425] netlink: 'syz-executor.2': attribute type 11 has an invalid length. 18:58:06 executing program 5: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:06 executing program 0: r0 = syz_io_uring_setup(0x884, &(0x7f0000000080), &(0x7f0000ee7000/0x2000)=nil, &(0x7f00006d4000/0x4000)=nil, &(0x7f0000000100)=0x0, &(0x7f0000000000)=0x0) r3 = syz_init_net_socket$nfc_raw(0x27, 0x3, 0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000400)=@IORING_OP_RECVMSG={0xa, 0x0, 0x0, r3, 0x0, &(0x7f00000005c0)={0x0, 0x0, 0x0}}, 0x0) io_uring_enter(r0, 0x688c, 0x0, 0x0, 0x0, 0x0) [ 1535.960208][T21428] netlink: 'syz-executor.3': attribute type 11 has an invalid length. [ 1536.042282][T30021] Bluetooth: hci1: command 0x0419 tx timeout 18:58:06 executing program 2: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) 18:58:06 executing program 0: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:06 executing program 3: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) [ 1536.654532][T21464] netlink: 'syz-executor.2': attribute type 11 has an invalid length. [ 1536.743505][T21472] netlink: 'syz-executor.3': attribute type 11 has an invalid length. 18:58:07 executing program 4: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:07 executing program 1: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:07 executing program 3: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) 18:58:07 executing program 2: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = getpid() sched_setscheduler(r1, 0x5, 0x0) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) ioctl$TIOCVHANGUP(0xffffffffffffffff, 0x5412, 0x0) dup2(r0, 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(r2, &(0x7f0000000280)={0x0, 0x0, 0x0}, 0x8040) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) ioctl$sock_SIOCGIFBR(0xffffffffffffffff, 0x8940, 0x0) sendmsg$NL80211_CMD_NEW_INTERFACE(r2, &(0x7f0000000400)={0x0, 0x1ff87, &(0x7f00000003c0)={&(0x7f0000000140)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r3, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r4, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) read$FUSE(0xffffffffffffffff, &(0x7f0000000640)={0x2020}, 0x2020) waitid(0x0, 0x0, 0x0, 0x0, &(0x7f0000000000)) ptrace$setsig(0x4203, 0x0, 0x0, &(0x7f00000000c0)={0x0, 0x9, 0x160}) 18:58:07 executing program 5: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) [ 1537.392433][T21499] netlink: 'syz-executor.2': attribute type 11 has an invalid length. [ 1537.402063][T21497] netlink: 'syz-executor.3': attribute type 11 has an invalid length. 18:58:08 executing program 0: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:08 executing program 3: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:08 executing program 2: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:08 executing program 4: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:09 executing program 1: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:09 executing program 5: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:09 executing program 0: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:09 executing program 3: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:09 executing program 2: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:09 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:10 executing program 1: r0 = socket$inet6_sctp(0xa, 0x1, 0x84) bind$inet6(r0, &(0x7f0000000140)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) setsockopt$sock_int(r0, 0x1, 0x28, &(0x7f0000000280)=0x8, 0x4) sendto$inet6(r0, &(0x7f0000847fff)='X', 0x7340, 0x0, &(0x7f000005ffe4)={0xa, 0x4e23, 0x0, @loopback}, 0x1c) recvmmsg(r0, &(0x7f0000006000)=[{{0x0, 0x0, 0x0}}], 0x1, 0x0, 0x0) 18:58:10 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_route(0x10, 0x3, 0x0) perf_event_open(0x0, 0x0, 0x3, 0xffffffffffffffff, 0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)) r1 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r1, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r1, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x439, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x3}, [@IFLA_LINKINFO={0x20, 0x12, 0x0, 0x1, @sit={{0x8}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPTUN_LINK={0x8, 0x1, r2}, @IFLA_IPTUN_REMOTE={0x8, 0x3, @local}]}}}]}, 0x40}}, 0x0) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) sendmsg$nl_route(r1, &(0x7f0000000600)={0x0, 0x0, &(0x7f00000005c0)={0x0}, 0x1, 0x0, 0x0, 0x24000004}, 0x20000080) open(0x0, 0x0, 0x0) sendto$packet(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0) socket$nl_route(0x10, 0x3, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000000)) socket$nl_generic(0x10, 0x3, 0x10) [ 1539.866319][ T26] audit: type=1804 audit(1634669890.360:409): pid=21550 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/10/bus" dev="sda1" ino=15010 res=1 errno=0 18:58:10 executing program 3: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:10 executing program 0: unshare(0x8000000) semget$private(0x0, 0x403, 0x0) r0 = syz_open_procfs$namespace(0x0, &(0x7f0000000140)='ns/ipc\x00') perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0x4000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) semtimedop(0x0, &(0x7f0000000040)=[{0x0, 0x0, 0x1000}], 0x1, 0x0) setns(r0, 0x0) [ 1540.041806][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1540.202877][T21550] affs: No valid root block on device loop4 [ 1540.624329][ T26] audit: type=1804 audit(1634669890.980:410): pid=21566 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/10/bus" dev="sda1" ino=15010 res=1 errno=0 18:58:11 executing program 2: r0 = socket(0x2000000000000021, 0x2, 0x10000000000002) connect$rxrpc(r0, &(0x7f0000000100)=@in6={0x21, 0x0, 0x2, 0x1c, {0xa, 0x0, 0x0, @mcast1}}, 0x24) r1 = socket(0x1e, 0x1, 0x0) sendmsg(r1, &(0x7f0000000000)={&(0x7f0000000080)=@generic={0x10000000001e, "02ff0100000001000000000000000ae77f5bf86c48020002000000f1ffffff009a480075e6a50000de010300000000e4ff064b3f013a000000080000008f00000000ac50d5fe32c4000000007fffffff6a008356edb9a6341c1fd45624281e00070ecddd0206c39750c40000fd00000900000000000b0000db000004da36"}, 0x80, 0x0}, 0x0) recvmmsg(r1, &(0x7f0000005c40)=[{{0x0, 0x0, &(0x7f0000000040)=[{&(0x7f00000001c0)=""/145, 0x91}], 0x1, &(0x7f0000000380)=""/189, 0xbd}}], 0x1, 0x0, 0x0) write$binfmt_elf32(r1, &(0x7f0000000500)=ANY=[], 0xfffffd6d) sendmmsg(r0, &(0x7f0000005c00)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="18000000000000001001000001"], 0x18}}], 0x57, 0x0) r2 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000140)='cgroup.controllers\x00', 0x275a, 0x0) write$binfmt_script(r2, &(0x7f0000000040)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r2, 0x0) recvmmsg(r0, &(0x7f0000000800)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffa2}}], 0x400000000000953, 0x42, 0x0) r3 = socket(0x2000000000000021, 0x2, 0x10000000000002) sendmsg(0xffffffffffffffff, &(0x7f000001d000)={0x0, 0x0, &(0x7f0000000040)=[{&(0x7f0000000600)="24000000100007031dff22946fa2830020200a0009000300001d85687f0000000400ff7e28000000050a43ba5d806055b6fdd80b400000c13900060008000029ec2400020cd37e99d69cda45a95e", 0xffffffc2}], 0x1}, 0x0) connect$rxrpc(r3, &(0x7f0000000180)=@in4={0x21, 0x0, 0x2, 0x10, {0x2, 0x4e24, @empty}}, 0x24) sendmmsg(r3, &(0x7f0000005c00), 0x40000000000037b, 0xbb8) 18:58:11 executing program 0: unshare(0x8000000) semget$private(0x0, 0x403, 0x0) r0 = syz_open_procfs$namespace(0x0, &(0x7f0000000140)='ns/ipc\x00') perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0x4000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) semtimedop(0x0, &(0x7f0000000040)=[{0x0, 0x0, 0x1000}], 0x1, 0x0) setns(r0, 0x0) 18:58:11 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket$netlink(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r4, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000300)=@newqdisc={0x44, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_hfsc={{0x9}, {0x14, 0x2, @TCA_HFSC_FSC={0x10}}}]}, 0x44}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000001a80)=@delchain={0x3c, 0x28, 0xd39, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {0x0, 0xffff}}, [@TCA_RATE={0x6}, @filter_kind_options=@f_cgroup={{0xb}, {0x4}}]}, 0x3c}}, 0x0) 18:58:11 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_route(0x10, 0x3, 0x0) perf_event_open(0x0, 0x0, 0x3, 0xffffffffffffffff, 0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)) r1 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r1, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r1, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x439, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x3}, [@IFLA_LINKINFO={0x20, 0x12, 0x0, 0x1, @sit={{0x8}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPTUN_LINK={0x8, 0x1, r2}, @IFLA_IPTUN_REMOTE={0x8, 0x3, @local}]}}}]}, 0x40}}, 0x0) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) sendmsg$nl_route(r1, &(0x7f0000000600)={0x0, 0x0, &(0x7f00000005c0)={0x0}, 0x1, 0x0, 0x0, 0x24000004}, 0x20000080) open(0x0, 0x0, 0x0) sendto$packet(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0) socket$nl_route(0x10, 0x3, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000000)) socket$nl_generic(0x10, 0x3, 0x10) [ 1541.369027][T21582] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1541.394575][ T26] audit: type=1804 audit(1634669891.890:411): pid=21549 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/10/bus" dev="sda1" ino=15010 res=1 errno=0 [ 1541.452090][T21549] affs: No valid root block on device loop4 [ 1541.528508][T21595] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. 18:58:12 executing program 0: unshare(0x8000000) semget$private(0x0, 0x403, 0x0) r0 = syz_open_procfs$namespace(0x0, &(0x7f0000000140)='ns/ipc\x00') perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0x4000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) semtimedop(0x0, &(0x7f0000000040)=[{0x0, 0x0, 0x1000}], 0x1, 0x0) setns(r0, 0x0) 18:58:12 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1541.646545][ T26] audit: type=1804 audit(1634669891.950:412): pid=21550 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/10/bus" dev="sda1" ino=15010 res=1 errno=0 18:58:12 executing program 3: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:12 executing program 0: unshare(0x8000000) semget$private(0x0, 0x403, 0x0) r0 = syz_open_procfs$namespace(0x0, &(0x7f0000000140)='ns/ipc\x00') perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext, 0x0, 0x0, 0x0, 0x0, 0x4000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) semtimedop(0x0, &(0x7f0000000040)=[{0x0, 0x0, 0x1000}], 0x1, 0x0) setns(r0, 0x0) 18:58:12 executing program 0: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:12 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket$netlink(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r4, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000300)=@newqdisc={0x44, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_hfsc={{0x9}, {0x14, 0x2, @TCA_HFSC_FSC={0x10}}}]}, 0x44}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000001a80)=@delchain={0x3c, 0x28, 0xd39, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {0x0, 0xffff}}, [@TCA_RATE={0x6}, @filter_kind_options=@f_cgroup={{0xb}, {0x4}}]}, 0x3c}}, 0x0) [ 1542.395389][ T26] audit: type=1804 audit(1634669892.890:413): pid=21622 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.0" name="/root/syzkaller-testdir743909510/syzkaller.4QUm0O/889/bus" dev="sda1" ino=14051 res=1 errno=0 18:58:13 executing program 2: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:13 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_route(0x10, 0x3, 0x0) perf_event_open(0x0, 0x0, 0x3, 0xffffffffffffffff, 0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)) r1 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r1, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r1, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x439, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x3}, [@IFLA_LINKINFO={0x20, 0x12, 0x0, 0x1, @sit={{0x8}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPTUN_LINK={0x8, 0x1, r2}, @IFLA_IPTUN_REMOTE={0x8, 0x3, @local}]}}}]}, 0x40}}, 0x0) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) sendmsg$nl_route(r1, &(0x7f0000000600)={0x0, 0x0, &(0x7f00000005c0)={0x0}, 0x1, 0x0, 0x0, 0x24000004}, 0x20000080) open(0x0, 0x0, 0x0) sendto$packet(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0) socket$nl_route(0x10, 0x3, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000000)) socket$nl_generic(0x10, 0x3, 0x10) [ 1542.644210][T21625] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1542.718353][ T26] audit: type=1804 audit(1634669893.210:414): pid=21635 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/10/bus" dev="sda1" ino=14193 res=1 errno=0 [ 1542.896340][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 18:58:13 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket$netlink(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r4, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000300)=@newqdisc={0x44, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_hfsc={{0x9}, {0x14, 0x2, @TCA_HFSC_FSC={0x10}}}]}, 0x44}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000001a80)=@delchain={0x3c, 0x28, 0xd39, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {0x0, 0xffff}}, [@TCA_RATE={0x6}, @filter_kind_options=@f_cgroup={{0xb}, {0x4}}]}, 0x3c}}, 0x0) [ 1543.347713][T21622] affs: No valid root block on device loop0 [ 1543.490729][ T26] audit: type=1804 audit(1634669893.340:415): pid=21639 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/11/bus" dev="sda1" ino=14242 res=1 errno=0 [ 1543.697820][T21659] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1543.821103][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1543.996980][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1544.069558][T21651] affs: No valid root block on device loop2 [ 1544.133597][T21635] affs: No valid root block on device loop3 [ 1544.150562][ T26] audit: type=1804 audit(1634669894.080:416): pid=21656 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.0" name="/root/syzkaller-testdir743909510/syzkaller.4QUm0O/889/bus" dev="sda1" ino=14051 res=1 errno=0 [ 1544.175909][ T26] audit: type=1804 audit(1634669894.280:417): pid=21649 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/888/bus" dev="sda1" ino=14130 res=1 errno=0 [ 1544.201578][ T26] audit: type=1804 audit(1634669894.650:418): pid=21680 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/10/bus" dev="sda1" ino=14193 res=1 errno=0 [ 1544.217988][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 18:58:14 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_route(0x10, 0x3, 0x0) perf_event_open(0x0, 0x0, 0x3, 0xffffffffffffffff, 0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)) r1 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r1, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r1, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000500)={&(0x7f0000000240)=@newlink={0x40, 0x10, 0x439, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x3}, [@IFLA_LINKINFO={0x20, 0x12, 0x0, 0x1, @sit={{0x8}, {0x14, 0x2, 0x0, 0x1, [@IFLA_IPTUN_LINK={0x8, 0x1, r2}, @IFLA_IPTUN_REMOTE={0x8, 0x3, @local}]}}}]}, 0x40}}, 0x0) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='memory.current\x00', 0x275a, 0x0) sendmsg$nl_route(r1, &(0x7f0000000600)={0x0, 0x0, &(0x7f00000005c0)={0x0}, 0x1, 0x0, 0x0, 0x24000004}, 0x20000080) open(0x0, 0x0, 0x0) sendto$packet(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0) socket$nl_route(0x10, 0x3, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000000000)) socket$nl_generic(0x10, 0x3, 0x10) 18:58:15 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket$netlink(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r3, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000380)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f00000008c0)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r4, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000100)={&(0x7f0000000300)=@newqdisc={0x44, 0x24, 0xf1d, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xfff1, 0xffff}}, [@qdisc_kind_options=@q_hfsc={{0x9}, {0x14, 0x2, @TCA_HFSC_FSC={0x10}}}]}, 0x44}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000001a80)=@delchain={0x3c, 0x28, 0xd39, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {0x0, 0xffff}}, [@TCA_RATE={0x6}, @filter_kind_options=@f_cgroup={{0xb}, {0x4}}]}, 0x3c}}, 0x0) [ 1545.124639][T21639] affs: No valid root block on device loop4 18:58:16 executing program 2: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1545.798423][ T1195] ieee802154 phy0 wpan0: encryption failed: -22 [ 1545.804779][ T1195] ieee802154 phy1 wpan1: encryption failed: -22 [ 1546.010047][T21696] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1546.302040][ T26] audit: type=1804 audit(1634669894.800:419): pid=21649 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/888/bus" dev="sda1" ino=14130 res=1 errno=0 [ 1546.327348][ T26] audit: type=1804 audit(1634669895.320:420): pid=21646 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/11/bus" dev="sda1" ino=14242 res=1 errno=0 18:58:16 executing program 1: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1547.267866][ T26] audit: type=1804 audit(1634669897.700:421): pid=21714 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/889/bus" dev="sda1" ino=14130 res=1 errno=0 [ 1547.719649][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1547.810707][ T26] audit: type=1804 audit(1634669898.170:422): pid=21718 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir141907368/syzkaller.ITyKGq/482/bus" dev="sda1" ino=14306 res=1 errno=0 [ 1548.528217][ T26] audit: type=1804 audit(1634669898.940:423): pid=21724 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/889/bus" dev="sda1" ino=14130 res=1 errno=0 [ 1548.683066][T21722] affs: No valid root block on device loop2 [ 1549.313032][T21718] affs: No valid root block on device loop1 18:58:19 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:19 executing program 5: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:19 executing program 0: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:19 executing program 3: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1550.165666][ T26] audit: type=1804 audit(1634669900.650:424): pid=21747 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/11/bus" dev="sda1" ino=14434 res=1 errno=0 [ 1550.688930][ T26] audit: type=1804 audit(1634669900.950:425): pid=21750 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.5" name="/root/syzkaller-testdir515810563/syzkaller.FIprTH/871/bus" dev="sda1" ino=14466 res=1 errno=0 [ 1550.714831][ T26] audit: type=1804 audit(1634669901.200:426): pid=21752 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.0" name="/root/syzkaller-testdir743909510/syzkaller.4QUm0O/890/bus" dev="sda1" ino=14450 res=1 errno=0 [ 1551.018365][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1551.921852][T21747] affs: No valid root block on device loop3 [ 1552.018278][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1552.078016][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1552.269012][ T26] audit: type=1804 audit(1634669902.240:427): pid=21755 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/11/bus" dev="sda1" ino=14434 res=1 errno=0 [ 1552.844597][T21750] affs: No valid root block on device loop5 [ 1553.319718][ T26] audit: type=1804 audit(1634669903.520:428): pid=21765 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.5" name="/root/syzkaller-testdir515810563/syzkaller.FIprTH/871/bus" dev="sda1" ino=14466 res=1 errno=0 [ 1553.344899][ T26] audit: type=1804 audit(1634669903.770:429): pid=21745 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/12/bus" dev="sda1" ino=14530 res=1 errno=0 [ 1553.403098][T21758] affs: No valid root block on device loop0 18:58:24 executing program 2: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1554.040471][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 18:58:24 executing program 1: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1554.224731][T21745] affs: No valid root block on device loop4 [ 1554.971241][ T26] audit: type=1804 audit(1634669904.430:430): pid=21767 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.0" name="/root/syzkaller-testdir743909510/syzkaller.4QUm0O/890/bus" dev="sda1" ino=14450 res=1 errno=0 [ 1555.677362][ T26] audit: type=1804 audit(1634669905.890:431): pid=21780 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/890/bus" dev="sda1" ino=14044 res=1 errno=0 [ 1556.870982][ T26] audit: type=1804 audit(1634669907.360:432): pid=21778 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir141907368/syzkaller.ITyKGq/483/bus" dev="sda1" ino=14037 res=1 errno=0 [ 1557.355499][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1557.591656][T21778] affs: No valid root block on device loop1 [ 1558.160767][ T26] audit: type=1804 audit(1634669908.650:433): pid=21778 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir141907368/syzkaller.ITyKGq/483/bus" dev="sda1" ino=14037 res=1 errno=0 18:58:29 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:29 executing program 3: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1559.811946][ T26] audit: type=1804 audit(1634669910.300:434): pid=21798 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/12/bus" dev="sda1" ino=14089 res=1 errno=0 [ 1559.837812][ T26] audit: type=1804 audit(1634669910.300:435): pid=21797 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/12/bus" dev="sda1" ino=14089 res=1 errno=0 [ 1559.865633][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1559.883543][T21798] affs: No valid root block on device loop3 18:58:30 executing program 5: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:30 executing program 3: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1560.644555][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1560.664963][ T26] audit: type=1804 audit(1634669910.450:436): pid=21798 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/12/bus" dev="sda1" ino=14089 res=1 errno=0 [ 1560.689789][ T26] audit: type=1804 audit(1634669910.620:437): pid=21796 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/13/bus" dev="sda1" ino=14072 res=1 errno=0 18:58:31 executing program 2: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:31 executing program 0: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1560.846919][T21796] affs: No valid root block on device loop4 [ 1561.751273][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1561.995759][ T26] audit: type=1804 audit(1634669911.500:438): pid=21808 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.5" name="/root/syzkaller-testdir515810563/syzkaller.FIprTH/872/bus" dev="sda1" ino=14089 res=1 errno=0 [ 1562.021271][ T26] audit: type=1804 audit(1634669911.610:439): pid=21815 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/13/bus" dev="sda1" ino=14072 res=1 errno=0 18:58:32 executing program 1: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1562.107115][T21808] affs: No valid root block on device loop5 [ 1562.780430][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1562.867467][T21811] affs: No valid root block on device loop3 [ 1563.810423][ T26] audit: type=1804 audit(1634669912.680:440): pid=21811 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/13/bus" dev="sda1" ino=13952 res=1 errno=0 [ 1563.836292][ T26] audit: type=1804 audit(1634669912.850:441): pid=21830 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.5" name="/root/syzkaller-testdir515810563/syzkaller.FIprTH/872/bus" dev="sda1" ino=14089 res=1 errno=0 [ 1563.861355][ T26] audit: type=1804 audit(1634669913.380:442): pid=21835 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.0" name="/root/syzkaller-testdir743909510/syzkaller.4QUm0O/891/bus" dev="sda1" ino=14000 res=1 errno=0 [ 1563.886683][ T26] audit: type=1804 audit(1634669913.650:443): pid=21840 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/13/bus" dev="sda1" ino=13952 res=1 errno=0 [ 1564.326987][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1565.163399][T21835] affs: No valid root block on device loop0 [ 1565.252034][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1565.510113][T21824] affs: No valid root block on device loop2 [ 1565.513211][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1566.424348][T21844] affs: No valid root block on device loop1 [ 1566.896432][ T26] audit: type=1804 audit(1634669914.820:444): pid=21844 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir141907368/syzkaller.ITyKGq/484/bus" dev="sda1" ino=14166 res=1 errno=0 [ 1566.922043][ T26] audit: type=1804 audit(1634669915.050:445): pid=21824 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/891/bus" dev="sda1" ino=14152 res=1 errno=0 [ 1566.947457][ T26] audit: type=1804 audit(1634669915.410:446): pid=21848 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.0" name="/root/syzkaller-testdir743909510/syzkaller.4QUm0O/891/bus" dev="sda1" ino=14000 res=1 errno=0 [ 1566.972265][ T26] audit: type=1804 audit(1634669916.130:447): pid=21825 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/891/bus" dev="sda1" ino=14152 res=1 errno=0 [ 1566.997548][ T26] audit: type=1804 audit(1634669916.700:448): pid=21858 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir141907368/syzkaller.ITyKGq/484/bus" dev="sda1" ino=14166 res=1 errno=0 18:58:38 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:38 executing program 3: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:38 executing program 5: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1569.190536][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1569.207287][T21870] affs: No valid root block on device loop5 [ 1569.633543][ T26] audit: type=1804 audit(1634669919.570:449): pid=21870 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.5" name="/root/syzkaller-testdir515810563/syzkaller.FIprTH/873/bus" dev="sda1" ino=14199 res=1 errno=0 [ 1569.659392][ T26] audit: type=1804 audit(1634669919.620:450): pid=21872 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/14/bus" dev="sda1" ino=14030 res=1 errno=0 [ 1569.684913][ T26] audit: type=1804 audit(1634669919.910:451): pid=21871 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.5" name="/root/syzkaller-testdir515810563/syzkaller.FIprTH/873/bus" dev="sda1" ino=14199 res=1 errno=0 [ 1570.155993][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1570.889843][T21872] affs: No valid root block on device loop3 18:58:41 executing program 2: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:41 executing program 5: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) openat$full(0xffffff9c, &(0x7f0000000040), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, 0xffffffffffffffff, &(0x7f0000016000/0x18000)=nil, &(0x7f0000000140)=[@textreal={0x8, &(0x7f0000000080)="baa100b000eef36cba2100ec66b9800000c00f326635001000000f30bad104ecc80080d267d9f8f30f1bb429000f20c06635200000000f22c067f3af", 0x3c}], 0x1, 0x0, 0x0, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_USER_MEMORY_REGION(r1, 0x4020ae46, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x2000, &(0x7f0000000000/0x2000)=nil}) ioctl$KVM_SET_REGS(r2, 0x4090ae82, &(0x7f00000001c0)={[0xfffffffffffff001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff], 0x100000}) r3 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x1) ioctl$KVM_RUN(r3, 0xae80, 0x0) ioctl$KVM_RUN(r2, 0xae80, 0x0) r4 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r4, 0x0) [ 1571.474760][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1571.555194][T21868] affs: No valid root block on device loop4 [ 1571.977936][ T26] audit: type=1804 audit(1634669921.170:452): pid=21868 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/14/bus" dev="sda1" ino=14198 res=1 errno=0 [ 1572.003376][ T26] audit: type=1804 audit(1634669921.320:453): pid=21881 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/14/bus" dev="sda1" ino=14030 res=1 errno=0 18:58:42 executing program 0: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_DELLINK(r0, &(0x7f0000000100)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000080)={0x18, 0x1404, 0x1, 0x0, 0x0, "", [@RDMA_NLDEV_ATTR_DEV_INDEX={0x8}]}, 0x18}}, 0x0) 18:58:43 executing program 1: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) 18:58:43 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) [ 1573.026827][ T26] audit: type=1804 audit(1634669922.670:454): pid=21898 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/14/bus" dev="sda1" ino=14198 res=1 errno=0 [ 1573.052046][ T26] audit: type=1804 audit(1634669922.960:455): pid=21892 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/892/bus" dev="sda1" ino=13922 res=1 errno=0 18:58:43 executing program 0: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_DELLINK(r0, &(0x7f0000000100)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000080)={0x18, 0x1404, 0x1, 0x0, 0x0, "", [@RDMA_NLDEV_ATTR_DEV_INDEX={0x8}]}, 0x18}}, 0x0) [ 1573.078800][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1573.196822][T21892] affs: No valid root block on device loop2 18:58:44 executing program 1: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) [ 1573.463335][T21906] loop5: detected capacity change from 0 to 2 [ 1573.654492][T21906] MTD: Attempt to mount non-MTD device "/dev/loop5" 18:58:44 executing program 0: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_DELLINK(r0, &(0x7f0000000100)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000080)={0x18, 0x1404, 0x1, 0x0, 0x0, "", [@RDMA_NLDEV_ATTR_DEV_INDEX={0x8}]}, 0x18}}, 0x0) [ 1573.952796][T21906] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1574.133274][ T26] audit: type=1804 audit(1634669924.380:456): pid=21921 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/892/bus" dev="sda1" ino=13922 res=1 errno=0 18:58:44 executing program 0: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_DELLINK(r0, &(0x7f0000000100)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000080)={0x18, 0x1404, 0x1, 0x0, 0x0, "", [@RDMA_NLDEV_ATTR_DEV_INDEX={0x8}]}, 0x18}}, 0x0) 18:58:46 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:46 executing program 1: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) 18:58:46 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) [ 1576.584655][T21947] loop5: detected capacity change from 0 to 2 [ 1576.645394][T21947] MTD: Attempt to mount non-MTD device "/dev/loop5" [ 1576.683540][T21947] romfs: Mounting image 'rom 5f663c08' through the block layer 18:58:47 executing program 2: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:47 executing program 0: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:47 executing program 3: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:47 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:47 executing program 1: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) [ 1576.895206][ T26] audit: type=1804 audit(1634669927.380:457): pid=21958 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/15/bus" dev="sda1" ino=14077 res=1 errno=0 [ 1577.099209][T21962] loop0: detected capacity change from 0 to 2 18:58:47 executing program 1: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) [ 1577.216598][ T26] audit: type=1804 audit(1634669927.710:458): pid=21974 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/15/bus" dev="sda1" ino=13891 res=1 errno=0 [ 1577.397430][T21962] MTD: Attempt to mount non-MTD device "/dev/loop0" [ 1577.501164][T21978] loop5: detected capacity change from 0 to 2 [ 1577.542392][T21962] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1577.618271][T21978] MTD: Attempt to mount non-MTD device "/dev/loop5" [ 1577.636687][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1577.735831][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1577.757599][T21978] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1577.840011][T21983] loop1: detected capacity change from 0 to 2 [ 1578.059503][T21983] MTD: Attempt to mount non-MTD device "/dev/loop1" [ 1578.081385][T21974] affs: No valid root block on device loop3 [ 1578.132976][T21983] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1578.149645][ T26] audit: type=1804 audit(1634669928.640:459): pid=21973 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/893/bus" dev="sda1" ino=14145 res=1 errno=0 18:58:48 executing program 0: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:48 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) [ 1578.568658][ T26] audit: type=1804 audit(1634669928.900:460): pid=21991 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir015256497/syzkaller.6DEtAs/15/bus" dev="sda1" ino=13891 res=1 errno=0 18:58:49 executing program 1: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) [ 1578.832532][T21958] affs: No valid root block on device loop4 [ 1578.847286][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1578.967084][T21973] affs: No valid root block on device loop2 [ 1579.003756][ T26] audit: type=1804 audit(1634669929.120:461): pid=21994 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/15/bus" dev="sda1" ino=14077 res=1 errno=0 [ 1579.388027][T22009] loop0: detected capacity change from 0 to 2 [ 1579.566318][T22016] loop5: detected capacity change from 0 to 2 [ 1579.625466][T22009] MTD: Attempt to mount non-MTD device "/dev/loop0" [ 1579.644193][T22009] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1579.743406][ T26] audit: type=1804 audit(1634669930.230:462): pid=21973 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir018068788/syzkaller.62BckD/893/bus" dev="sda1" ino=14145 res=1 errno=0 [ 1579.798358][T22028] loop1: detected capacity change from 0 to 2 [ 1579.872451][T22016] MTD: Attempt to mount non-MTD device "/dev/loop5" [ 1579.954460][T22028] MTD: Attempt to mount non-MTD device "/dev/loop1" [ 1580.069578][T22016] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1580.162073][T22028] romfs: Mounting image 'rom 5f663c08' through the block layer 18:58:53 executing program 4: r0 = open(&(0x7f00000001c0)='./bus\x00', 0x1031fe, 0x0) r1 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, r1, 0xffffffefffffffff, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) sched_setparam(0x0, 0x0) sendfile(r0, r0, 0x0, 0x8080fffffffe) r3 = open(&(0x7f0000000300)='./bus\x00', 0x0, 0x0) r4 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r4, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r4, 0x0) r5 = socket$inet6_tcp(0xa, 0x1, 0x0) sendto$inet6(r5, 0x0, 0x0, 0x20000004, &(0x7f0000000280)={0xa, 0x100000004e22, 0x0, @loopback}, 0x1c) setsockopt$inet6_tcp_TCP_ULP(r5, 0x6, 0x1f, &(0x7f0000000080), 0x152) setsockopt$inet6_tcp_TLS_TX(r5, 0x11a, 0x1, &(0x7f0000000100)=@gcm_128={{0x303}, '\x00', '\x00', "20040100"}, 0x28) syz_mount_image$affs(&(0x7f00000000c0), &(0x7f0000000140)='./bus\x00', 0x43, 0x1, &(0x7f0000000200)=[{&(0x7f00000005c0)="c4fc941855a42b2d9d2d0f2b7811cd9e0d991d33e9d78df308f0000bcd964b01fbf96c04e0afeb5e2c7ada031469603584d9235387b419429f9ba5ca1bc56331186622a2adec8b5e1f5f", 0x4a, 0x1}], 0x0, &(0x7f0000000340)=ANY=[@ANYBLOB="2c002c2c2c6673636f6e746578743d73797374656d5f752c0098df1ea64a7198d003c38db29963b37923667e014a2634df92c37e78f527f7be2e6b8dc7dd7659c58588132f22f881c73f899adbbd5f876c57045e6071e5d75ce3efc7835f5dc831102f955faec649a32aad510f38eeef17405e8f5c76b5ef11309886648f9c93b2950a967339fb921814a51ed848c7bc426223c1223a9c2032ce4c8bbb397fd474cfcb003d47323ced6a8d5ec34acb6fb2b77010c7b950bbad1a3d65bc16a0f8b40300000000"]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 18:58:53 executing program 0: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:53 executing program 1: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:53 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:53 executing program 2: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) 18:58:53 executing program 3: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) [ 1583.080769][T22047] loop0: detected capacity change from 0 to 2 [ 1583.149769][T22047] MTD: Attempt to mount non-MTD device "/dev/loop0" [ 1583.164070][T22055] loop5: detected capacity change from 0 to 2 [ 1583.224268][T22055] MTD: Attempt to mount non-MTD device "/dev/loop5" [ 1583.263019][T22058] loop1: detected capacity change from 0 to 2 18:58:53 executing program 2: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) 18:58:53 executing program 3: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) [ 1583.281458][T22047] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1583.295676][T22055] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1583.474346][T22058] MTD: Attempt to mount non-MTD device "/dev/loop1" 18:58:54 executing program 0: r0 = socket$inet6(0xa, 0x3, 0x3) sendmsg$inet6(r0, &(0x7f00000000c0)={&(0x7f0000000000)={0xa, 0x0, 0x0, @mcast1}, 0x1c, 0x0, 0x0, &(0x7f0000000100)=[@tclass={{0x14}}], 0x18}, 0x0) 18:58:54 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) [ 1583.530613][T22058] romfs: Mounting image 'rom 5f663c08' through the block layer [ 1583.649646][ T26] audit: type=1804 audit(1634669934.140:463): pid=22081 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir102067994/syzkaller.aauko8/16/bus" dev="sda1" ino=14257 res=1 errno=0 18:58:54 executing program 3: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) 18:58:54 executing program 1: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) [ 1584.166028][T22081] affs: No valid root block on device loop4 18:58:54 executing program 2: r0 = perf_event_open(&(0x7f0000000580)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40000, 0x0, @perf_bp={0x0, 0xc}, 0x0, 0x0, 0x0, 0x0, 0x40000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) msgctl$IPC_RMID(0x0, 0x0) msgsnd(0x0, &(0x7f0000000100)=ANY=[], 0x99, 0x0) msgsnd(0x0, 0x0, 0x2000, 0x0) msgsnd(0x0, &(0x7f00000002c0)=ANY=[@ANYBLOB="02000000000000002d68f0b88bf7f778ef26e2a48764f49120afbc3ad9b8682318c619b16643bb593d33a5af66ed5b6231e581e331b1fc98f0405ccd05f1aafc7d7212451478daef5c1d659e49188858adba48405bd05e403db7c8ffdb0618e0978f83b63a780f0cef0af411ad0b0bec5b03990fdcef746daa68c94bbe3d180a9a57bd7c6824236e6c7b218fc25364d64d1b90752c7e0969051fada200edc58bf196b493df09078e38c2b36a0cb6e3c99ba9b0957cbf67c8fa58dc5c810b41902e099862b8cd86ba3fb9890a7d60096950819983123884061ef8a8ac983fe97e4774984af9"], 0xe5, 0x0) r1 = msgget$private(0x0, 0x0) r2 = msgget$private(0x0, 0x0) msgrcv(r2, &(0x7f0000000600)={0x0, ""/62}, 0x46, 0x2, 0x1800) msgsnd(r1, &(0x7f00000006c0)=ANY=[@ANYBLOB="01000000000000008671f0c17c3a50f68be004043bc38000d5218625edb8248a1d9caf5dd499efafd134dc8c298da0efabc8b91443ee6742584ac2f436c4a429e4268c4b5007dcb040a0fb6c20207258f74a178b9d6d8900c8158b68d0de0f3fbddf24c6290310ae903d9f885916cacddd960046d8726dfc6b71bd250c75c60f7c0714502713a4b4c2b6351d009ae6afa6d243406ab74e75b8a9b6e5b63286d4c758b1c05809d70664ebb01e3adbc85966462ab71b086d60dd40a652a3ef6f5781929556694996a2629dd09b3e094d68d66c9ef1f1b83275973977fda1af926506f825b594eceefdf17352549eaf979792ef9d321cc30b3ede57e12a3ed77b6ffb4baf8c518bddcc6455f82428b8501642457094bd51f286585b0500000000000000b979b26705ec8e68e48492ca03be3763aba9d644ce4879beabaa083f91840b08adac9dc6c8038718dfa6b1446d2ed09cc2ef6c37ceb63a194496542ccaca852188ebab7e74cfc37c0ff88cc728ec1aee5867731180dfac3d43e83aaba95fb37d8ad8eb124905db95f23466de8f7d1aef08acedb30ffd3bc1268a41662d0789a104756abb1e758690ea68a281b4215a4d2b807d0ce004810f40b6b8eee4daca89ec9fde4aff063bd3377e4bb082fb51e579d29dc8e68bb40b246edeb4ec36a3ee1dc2150000572e9871e80af3108e34efc21589ef0329703724f4c934e1d049f0dfcedeca07f5af70f6f3bb73961d1fffc74d0f72d85aba8d24957bdc259949dc4dea9cf4311f6cd97fce202acc463eaf089e67e0d9d467dc86b4c79e568c318644419457795ed7be7ef461730812860dbf425cbbb31a404779dc7731065791c9262b55272b180900002355ab8a26c4af2b7e4af049a1fcb1b1514589ca4b2c0162c0521388c96d75db9a54276d91cec65355a24f9d8928f80a0874a4a73b58b4c964509d372d47abb3bf2451a02ca1e2f3bce78a11f8bb46b2c171007e1454838dba7142209899cd82bcc271cacfc5124b476a78f9f943f3cf408953c5d322658a2e9453fd048b4ef2d314b1f82da05a3c937bbf95be0e611f46af62a4d1e63ec6c87a75a022634bff7e5b8f5f98ec525d40ac1f7159989ee04d746be87a168a010ec381d56b2ec11b6ce5d4195081db2b9d068fda332e7316731e47b63b88a8f591831feb38a39daf3aeeefac22956312eb8ba7b2b3d742f898901fbca29b14e3bbad83b0a9fea7e5cc95ebe86403d82cb4180db3d5cd33c7b46f89a835732271cfaa3a10be33d1ac065fa65cd51a2f948f57ddbb54d7c5717dbe98f1da6715ea2de32f443b6d6639d9116696a79082809f69e2cd8274757e4546da8cd82057c380639a0a84826f9fdb5f59e58765046c66ae8508d34576e2703ffba3bbd75b5022ff6a2d5f22834c5b795b72c0d6748769557a8745f27bf95cb550dbea6f67446e93d36c5f683537052e1f8987ceb85f3037f71dce089474be29b0e8444432f072e55582246b088efdb6a158201af7d0d2fecfda261cc129743293e3fc57f737208f2a8efad67eb41d011cd75761e4d8b66b9ecb63f598ecdfc4f2ddb43707a8f107673a5ec7ae50950d63f1a1147b5d2a545dc64e2790630e23cb25993cfca1257016344412a246951779bc6538e2e49fcc438abcef96c189f6b13d6b38fe000000"], 0x401, 0x0) msgctl$IPC_SET(r1, 0x1, &(0x7f0000000000)={{0x2, 0x0, 0x0, 0x0, 0xffffffffffffffff}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffe}) msgrcv(r1, &(0x7f0000000100)={0x0, ""/198}, 0xce, 0x2, 0x3800) socket$netlink(0x10, 0x3, 0x0) msgget(0x3, 0x2d0) r3 = creat(&(0x7f0000000000)='./file0\x00', 0x0) msgrcv(0x0, &(0x7f00000003c0)={0x0, ""/224}, 0xe8, 0x2, 0x3800) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) mount$tmpfs(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x2000, &(0x7f0000000200)=ANY=[@ANYRES32, @ANYRESOCT=r0, @ANYRESOCT=r3, @ANYRESHEX]) msgget(0x3, 0x0) r4 = socket$inet(0x10, 0x80003, 0x0) sendmsg(r4, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)=[{&(0x7f0000000680)="24000000180003041dfffd946f6105000214010a1f0000050c1008000800080004001000", 0x24}], 0x1}, 0x48d0) 18:58:54 executing program 0: r0 = socket$inet6(0xa, 0x3, 0x3) sendmsg$inet6(r0, &(0x7f00000000c0)={&(0x7f0000000000)={0xa, 0x0, 0x0, @mcast1}, 0x1c, 0x0, 0x0, &(0x7f0000000100)=[@tclass={{0x14}}], 0x18}, 0x0) 18:58:54 executing program 4: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) [ 1584.348515][T22101] loop5: detected capacity change from 0 to 2 [ 1584.418660][T22101] MTD: Attempt to mount non-MTD device "/dev/loop5" [ 1584.443680][T22101] romfs: Mounting image 'rom 5f663c08' through the block layer 18:58:55 executing program 3: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$fou(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$FOU_CMD_ADD(r0, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000140)={0x14, r1, 0x1}, 0x14}}, 0x0) 18:58:55 executing program 5: syz_mount_image$msdos(&(0x7f0000000040), 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) chdir(0x0) perf_event_open(&(0x7f0000000680)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x0, 0x9, 0x0, 0x9}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) getdents(0xffffffffffffffff, &(0x7f0000000400)=""/154, 0x9a) mkdir(&(0x7f0000000040)='./control\x00', 0x0) inotify_init1(0x0) inotify_init() perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x7f, 0x96, 0x7f, 0x40, 0x0, 0x0, 0x20280, 0x11, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x2, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000200), 0xe}, 0x8040, 0x0, 0x5, 0x1, 0x10000, 0x81, 0xffff, 0x0, 0xffffffff, 0x0, 0x100000000}, 0x0, 0x0, 0xffffffffffffffff, 0x8) inotify_init() r0 = syz_mount_image$romfs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x1, &(0x7f0000000180)=[{&(0x7f0000010000)="2d726f6d3166732d00002980bae40061726f6d20356636363363303800000000000000490000002000000000d1ffff972e000000000000000000000000000000000000600000002000000000d1d1ff802e2e000000000000000000000000000000000559000000800000000069968dc266696c65300000000000000000000000000004ca000000000000041a69968ab766696c6530000000000000000000000073797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c6572", 0x400}], 0x0, &(0x7f0000000900)=ANY=[]) getdents64(r0, &(0x7f0000000140)=""/146, 0x92) syz_open_dev$vcsn(0x0, 0x9, 0x2802) 18:58:55 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) [ 1584.670755][T22125] loop1: detected capacity change from 0 to 6 18:58:55 executing program 0: r0 = socket$inet6(0xa, 0x3, 0x3) sendmsg$inet6(r0, &(0x7f00000000c0)={&(0x7f0000000000)={0xa, 0x0, 0x0, @mcast1}, 0x1c, 0x0, 0x0, &(0x7f0000000100)=[@tclass={{0x14}}], 0x18}, 0x0) 18:58:55 executing program 3: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$fou(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$FOU_CMD_ADD(r0, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000140)={0x14, r1, 0x1}, 0x14}}, 0x0) [ 1585.074117][T22148] loop5: detected capacity change from 0 to 2 [ 1585.094464][T22146] netlink: 'syz-executor.2': attribute type 11 has an invalid length. [ 1585.109502][T22148] MTD: Attempt to mount non-MTD device "/dev/loop5" 18:58:55 executing program 4: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) 18:58:55 executing program 1: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) 18:58:55 executing program 0: r0 = socket$inet6(0xa, 0x3, 0x3) sendmsg$inet6(r0, &(0x7f00000000c0)={&(0x7f0000000000)={0xa, 0x0, 0x0, @mcast1}, 0x1c, 0x0, 0x0, &(0x7f0000000100)=[@tclass={{0x14}}], 0x18}, 0x0) [ 1585.194805][T22148] romfs: Mounting image 'rom 5f663c08' through the block layer 18:58:55 executing program 0: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) 18:58:55 executing program 5: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) 18:58:55 executing program 3: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$fou(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$FOU_CMD_ADD(r0, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000140)={0x14, r1, 0x1}, 0x14}}, 0x0) 18:58:55 executing program 4: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) [ 1585.672958][T22146] netlink: 'syz-executor.2': attribute type 11 has an invalid length. 18:58:56 executing program 3: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$fou(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$FOU_CMD_ADD(r0, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000140)={0x14, r1, 0x1}, 0x14}}, 0x0) [ 1585.886813][T22179] loop1: detected capacity change from 0 to 6 18:58:56 executing program 5: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) [ 1585.959786][T22178] loop0: detected capacity change from 0 to 6 18:58:56 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:58:56 executing program 4: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) 18:58:56 executing program 3: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x80000002, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0}, {&(0x7f0000000340)="66530700ae897094e71b0fb1f147a8378f", 0x4e}], 0x4, 0x0) sendmsg$key(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, 0x0}, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x5) tkill(r0, 0x34) ptrace$cont(0x18, r0, 0x0, 0x0) sendmsg$inet(0xffffffffffffffff, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000100)=[{&(0x7f0000000080)="4dc3", 0x2}], 0x1}, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) exit_group(0x0) 18:58:56 executing program 1: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) 18:58:56 executing program 5: r0 = socket$unix(0x1, 0x5, 0x0) bind$unix(r0, &(0x7f00000002c0)=@abs={0x1, 0x0, 0x4e24}, 0x6e) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff}) connect$unix(r1, &(0x7f0000000080)=@abs={0x1, 0x0, 0x4e20}, 0x6e) 18:58:56 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:58:56 executing program 0: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) 18:58:57 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:58:57 executing program 5: r0 = syz_open_dev$dri(&(0x7f0000000580), 0x0, 0x0) ioctl$DRM_IOCTL_MODE_GETPLANE(r0, 0xc02064b6, &(0x7f0000000600)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) [ 1586.878433][T22226] loop1: detected capacity change from 0 to 6 [ 1587.019221][T22224] loop0: detected capacity change from 0 to 6 18:58:57 executing program 5: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) ioctl$KVM_SET_LAPIC(r2, 0x4008ae89, &(0x7f00000004c0)={"06000000dd245c8484000040c9c8dc1964325fa96fa42b76210000402bec0ba41f01010000000000000100403b00041f01ffff8e083c7da2c2000010ee377abaece6b88378e3d63aa0010000361d264ffa8b46485f02baee010100c04252066178860d1ef4b5365c5dc26ca097ddda7c21a984c2b9ca4bbb7a87165c0c552575d7ea4df10000174ac499a573577736800000000000008f37f06e4ea9f1e5f0c6c379f9cc58bf69fcde318ead4825aa006a832d309fcda5bb5a6baa41d614f6c8941bee805954a62d196a4e8d4bf6b21224b57f530d0000c1ff53bf79a1f5c5dc34b2262d66ae793b6304a30b97077f1c131045cbc11c4562d22db88d0edc5daee171cc04d96d9ec2db07478fbe65449b404923ad4a5672b1b285c7988c4ec0922c655ff600000000c00dc290d936d93236051fadfb4b95d02c0bda7ce38dabb7cd103fe4d0c9c963cd717a77f8df8d46099b1f58e068af6afbbc19db161c6df1e7c9c71bc08a282fc2c142856b5e69aff4c0a4f72445ef10dcd2c569319d6e9bb2058d023f669a64fc7d9684364673dcfa9235ea5a2ff23c4bb5c5acb2e8976dcac779ff000000000000003d185afe28b774b99d38c90937428617de4cdd6f53c419ce31054182fd898af706f1b1152c691611f897558d4b755cb78397979859b0537b05b623dcb5c4ca9317471a40fa4998cca80e9605ab8c9be3c3fe7aeb8af4929ce7d346ca702f78b233b5208752726ed9f0c340d494b92d19cc930bb8a5f8b4da8f4603ac0c3b698384e17a570dc8524823ed15af4ecfabb4b2541d3c114b7bba1c21a845c9cf0d1cc24aba16f70f558b2246ad95ccf7d3f80cc0ab26f05b898837016eb211a1734c7af076e15451e33519fc978f66df7df4557c91024a8dc130a28ef5f63ad07b39c8d23b85cf434e065e8a29a800655d127de6f6347b4951f97b5703dc78b1ca9d74ea6a9ae12ab367c0de2659cc38d2f33ddd86e0597d33361eada119b5132145fa4525c488c7fffd6ceda6e9a02ebd97ced6b0161f2cc84615ceb8b18883299c636e9e46724a9a0600a8bb02f3e489631d522019a35fe12a33caf9dd8768ddbc02a484c345c3efb254297b1dbb04989c3f9f3c7b3c985c39b1d313018068d3809bac8c657e39f47692613e28387e955722908dd88b56163be8312ff47c5b6f070072975af74e97a5a811018000006f4c8ec82ddb56d9b962d2fc43fa01a047666865c84f7cff36056cc4ac258021e1581d43badaaec6cc5a2ef989de9801fed6d4be2bfcfe07a69c46bffb7e7603970800000000000000d372bdd6d89dc1ecf63c23d506114d0fba2bd1c69e8fdcda85ce975ec1381b1cec6ddaa76e186719d819164300"}) syz_kvm_setup_cpu$x86(r1, 0xffffffffffffffff, &(0x7f0000fe8000/0x18000)=nil, &(0x7f0000000140)=[@textreal={0x8, 0x0}], 0x1, 0x0, 0x0, 0x0) ioctl$KVM_RUN(r2, 0xae80, 0x0) 18:58:58 executing program 0: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) 18:58:58 executing program 1: r0 = perf_event_open(&(0x7f00000004c0)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc8110, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0, 0x5}, 0x0, 0xffffffffffffffff}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000740)='cpu\t\t&6\n\x00\xff\x00\xdc.\xdf\xbbk\xad\x1b\xf3\xf6_|S\x93>\xb4\x15#b\x91\xec\xf2\x12\xbb\xd0\xcd0\xa4\xda\xa8\xe1o+\xbd}EV\xba6\xae\xee(4\xe4\x8d\x17\b\xa7\xb04G\xc28\xfb\x19\x94\xdf\x11JE\x02\x98Pm\x0f(\x98\xff\x05[\xd9\xad|\xa3\xc9Y~\xf4\xf7\xf9F\x9c\xf0\x83H\xb5\x12\xdeM\x802\x1f\xa6\x8a\x89\x1c') openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000001200)='memory.current\x00', 0x275a, 0x0) r2 = openat$hwrng(0xffffffffffffff9c, &(0x7f0000000200), 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0x4, 0x0, 0x0, 0x0, 0x0, 0x930b, 0x8, 0x7, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x3, 0x0, @perf_bp={&(0x7f00000000c0), 0x2}, 0x11008, 0x0, 0x0, 0x0, 0x5}, 0x0, 0x0, r2, 0x0) setsockopt$inet_sctp_SCTP_RTOINFO(r2, 0x84, 0x0, &(0x7f0000000140)={0x0, 0x40, 0x8001, 0x8}, 0x10) openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000480)='pids.current\x00', 0x0, 0x0) write$binfmt_script(r1, &(0x7f0000000000)=ANY=[], 0x208e24b) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x2, 0x28011, r1, 0x0) ioctl$DRM_IOCTL_AGP_INFO(0xffffffffffffffff, 0x80386433, 0x0) perf_event_open(&(0x7f0000000200)={0x2, 0x80, 0x42, 0x8001, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_config_ext={0x1}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x803, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) preadv(r1, &(0x7f00000015c0)=[{&(0x7f0000000080)=""/124, 0xffffffff000}], 0x1, 0x0, 0x0) syz_mount_image$xfs(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', 0x7, 0x7, &(0x7f0000000c40)=[{&(0x7f0000000540)="cbfa235768b3d3263c2e61f2000db35723f1e9d587ba3d53ee39e3202d4fd92d252a9be58ff1b2b7f661ea97da117b939d88c9c9f6067786d0929a11a2adac5698d22f5c0f6b8a645f4306b22231a30cba73ac6dc15c894003635aa4954ec076df7117b1972a23d864e75e134240f84a9eb345f7b48bc4a3ce9f2cc63ac770e12f77bbafad8a6dc16d365e6c08f3804fea8abe49ab73309f003466ef1c9913c76faa4808f5f6c145fc1e5890e0ead2", 0xaf, 0x3}, {&(0x7f0000000600)="638d71002ad237481683c2a9b3061fd53d7e25ce36d428c93ff73e9b263ee34eb9f76ba4c1bb10ad0ec5abd8b5ef4ae92ae187fd6593533527473c8a2b8aa21873715dfd13a7b0dc031f3b88", 0x4c, 0x6e8}, {&(0x7f0000000680)="3ae382b1ef7233eedc8698090a97d94dc0edcf179978a3a9b969df547d44d701f310cf1afd518ee2fefc327b52624cee306d191b0364b2c0b7aa57326385a2ca4efa89270962d83cd9cb506924a49ab66bfd", 0x52}, {&(0x7f00000007c0)="703503a503dec48e7bb65bd0672b7dd44fa9e16058b5647b2ca248e60557b159f9b034f2b292aba74366e5cb9d", 0x2d, 0x6}, {&(0x7f00000008c0)="dea72450b7f226c196788bb10e545a1a0f20cfbc1f776667518913492f321ae38aa2811d2abc21aa54222cb941efacf18c9786969bc31e555f2585f1a46db40536a91924d352b8f1b3a551415f59dd35cbb094783a6931f819b46c11dc0cce38298b4b46955f3e013f15", 0x6a, 0x3}, {&(0x7f00000009c0)="9c2abb4a5c96646a6e1208c6ec6575eb4d11955381e7b54c8f2f6711855491efc8d1bb9976d1274aaa289e2438ba406e84041b6d685cdc0db8a4ec196dfd21a3165327c8cc780d33776cfc7a86a3da590f7d26b015a26734d4580d3ed399c7551b96c888b6fc2370d456889235efd8c82eab0d4d09837a811a17e322d2ef0534343f5c8b59882dfd82a9a8824cfb7d662cc88763019baf2e15948fe9660aa2eed21ba659b67a8f5ad082bffe466b53a26c29a06a06c843e937a7ee3c844d209b261d27db81fc4ec3d7ebcf68fd56e86a9e63730366da8701e1b0731765f669e5a7", 0xe1, 0x2}, {&(0x7f0000000b80)="faee8392fa7132e22cb1a8cb390c3ea4b84b7ab643889a779b7957e91cfa1010d4d60fc7955fe36aeea31dcd58d2b63a3e89375c30c2c798e64d0026f594a1145d6bf04546d9dea6a0b0e267", 0x4c, 0x1}], 0x80008, &(0x7f0000000d40)={[{@dax}, {}, {@gquota}], [{@permit_directio}, {@obj_type}, {@hash}, {@fsname}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@subj_role}, {@fowner_lt={'fowner<', 0xee01}}, {@appraise_type}, {@rootcontext={'rootcontext', 0x3d, 'user_u'}}, {@mask={'mask', 0x3d, '^MAY_APPEND'}}]}) ioctl$DRM_IOCTL_MODE_GETGAMMA(0xffffffffffffffff, 0xc02064a4, &(0x7f0000000340)={0x0, 0x2, &(0x7f0000000280)=[0x400, 0x6], &(0x7f00000002c0), &(0x7f0000000300)=[0x0, 0x2, 0x7, 0x7, 0x1ff]}) openat$incfs(0xffffffffffffffff, &(0x7f0000000180)='.pending_reads\x00', 0x20000, 0x1fa) ioctl$DRM_IOCTL_RM_CTX(0xffffffffffffffff, 0xc0086421, &(0x7f0000000380)) [ 1587.552111][T22222] netlink: 'syz-executor.4': attribute type 11 has an invalid length. [ 1587.881989][T22257] loop0: detected capacity change from 0 to 6 [ 1588.020249][T22227] netlink: 'syz-executor.3': attribute type 11 has an invalid length. [ 1588.318921][T22213] netlink: 'syz-executor.2': attribute type 11 has an invalid length. [ 1588.494599][T22271] loop1: detected capacity change from 0 to 6 18:58:59 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:58:59 executing program 5: openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000000c0)='memory.events\x00', 0x26e1, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0xb0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='memory.events\x00', 0x100002, 0x0) write$cgroup_subtree(r0, &(0x7f0000000c80)=ANY=[], 0x32623) 18:58:59 executing program 5: openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000000c0)='memory.events\x00', 0x26e1, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0xb0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='memory.events\x00', 0x100002, 0x0) write$cgroup_subtree(r0, &(0x7f0000000c80)=ANY=[], 0x32623) 18:58:59 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:58:59 executing program 5: openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000000c0)='memory.events\x00', 0x26e1, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0xb0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='memory.events\x00', 0x100002, 0x0) write$cgroup_subtree(r0, &(0x7f0000000c80)=ANY=[], 0x32623) 18:58:59 executing program 5: openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000000c0)='memory.events\x00', 0x26e1, 0x0) perf_event_open(&(0x7f0000000180)={0x2, 0x80, 0xb0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r0 = openat$cgroup_ro(0xffffffffffffff9c, &(0x7f0000000100)='memory.events\x00', 0x100002, 0x0) write$cgroup_subtree(r0, &(0x7f0000000c80)=ANY=[], 0x32623) 18:59:00 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) [ 1590.041545][T22293] netlink: 'syz-executor.2': attribute type 11 has an invalid length. [ 1590.125175][T22318] netlink: 'syz-executor.3': attribute type 11 has an invalid length. [ 1590.223587][T22305] netlink: 'syz-executor.4': attribute type 11 has an invalid length. 18:59:01 executing program 4: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:59:02 executing program 0: io_setup(0xbe3, &(0x7f0000000000)=0x0) r1 = syz_open_dev$sg(&(0x7f0000000040), 0x0, 0x0) io_submit(r0, 0x1, &(0x7f0000000900)=[&(0x7f00000000c0)={0x0, 0x0, 0x0, 0x5, 0x0, r1, 0x0}]) 18:59:02 executing program 1: openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r0 = io_uring_setup(0x6d61, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_BUFFERS(r0, 0x0, &(0x7f0000000100)=[{0x0}], 0x1) io_uring_register$IORING_REGISTER_PROBE(r0, 0x10, &(0x7f0000000200)=ANY=[@ANYBLOB="000000000000000000000020000000000c0000200000000001"], 0x20) 18:59:02 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0xc0c0583b, 0x0) r0 = socket$inet6(0xa, 0x3, 0xff) setsockopt$inet6_int(r0, 0x29, 0x16, &(0x7f0000000000), 0x4) 18:59:02 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0xc0c0583b, 0x0) r0 = socket$inet6(0xa, 0x3, 0xff) setsockopt$inet6_int(r0, 0x29, 0x16, &(0x7f0000000000), 0x4) [ 1592.158869][T22349] netlink: 'syz-executor.4': attribute type 11 has an invalid length. 18:59:03 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:59:03 executing program 0: io_setup(0xbe3, &(0x7f0000000000)=0x0) r1 = syz_open_dev$sg(&(0x7f0000000040), 0x0, 0x0) io_submit(r0, 0x1, &(0x7f0000000900)=[&(0x7f00000000c0)={0x0, 0x0, 0x0, 0x5, 0x0, r1, 0x0}]) 18:59:03 executing program 1: openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r0 = io_uring_setup(0x6d61, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_BUFFERS(r0, 0x0, &(0x7f0000000100)=[{0x0}], 0x1) io_uring_register$IORING_REGISTER_PROBE(r0, 0x10, &(0x7f0000000200)=ANY=[@ANYBLOB="000000000000000000000020000000000c0000200000000001"], 0x20) 18:59:03 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0xc0c0583b, 0x0) r0 = socket$inet6(0xa, 0x3, 0xff) setsockopt$inet6_int(r0, 0x29, 0x16, &(0x7f0000000000), 0x4) 18:59:03 executing program 1: openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r0 = io_uring_setup(0x6d61, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_BUFFERS(r0, 0x0, &(0x7f0000000100)=[{0x0}], 0x1) io_uring_register$IORING_REGISTER_PROBE(r0, 0x10, &(0x7f0000000200)=ANY=[@ANYBLOB="000000000000000000000020000000000c0000200000000001"], 0x20) 18:59:03 executing program 0: io_setup(0xbe3, &(0x7f0000000000)=0x0) r1 = syz_open_dev$sg(&(0x7f0000000040), 0x0, 0x0) io_submit(r0, 0x1, &(0x7f0000000900)=[&(0x7f00000000c0)={0x0, 0x0, 0x0, 0x5, 0x0, r1, 0x0}]) [ 1592.705091][T22375] netlink: 'syz-executor.2': attribute type 11 has an invalid length. 18:59:03 executing program 3: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000380)) statx(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0) waitid(0x1, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000500), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_INTERFACE(0xffffffffffffffff, 0x0, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f0000000300)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_NEW_INTERFACE(r1, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000003c0)={&(0x7f0000000540)=ANY=[@ANYBLOB='X\x00\x00\x00', @ANYRES16=r2, @ANYBLOB="090d0000000000f0ff000700000008000300", @ANYRES32=r3, @ANYBLOB="0800051d000000001400060076657468115f746f5f7465616d0000000400cc0008000500040000001400040073"], 0x58}}, 0x0) waitid(0x0, 0x0, 0x0, 0x4, &(0x7f0000000000)) r4 = socket(0x10, 0x0, 0x0) recvmsg(0xffffffffffffffff, &(0x7f0000000240)={0x0, 0x0, 0x0}, 0x0) sendmsg$NL80211_CMD_STOP_AP(r4, &(0x7f00000002c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000440)=ANY=[@ANYBLOB="a8000000e8aba7a1aaf80d776059637fcfa1400d1d61ff572d6480aa21d21649f3d2589aba0f657f4c2a445d28d4488ffd1e4b375418fc5b19aa92654b9b426ba79862a5686eb2fb38aa62ff33ca3301800000c44673fe73d3", @ANYRES16=0x0, @ANYBLOB="00022dbd7000fddbdf", @ANYRES32], 0x28}, 0x1, 0x0, 0x0, 0x4000000}, 0x48800) sendmsg$nl_route_sched(r4, 0x0, 0x10) ptrace$setsig(0x4203, r0, 0x0, &(0x7f00000000c0)={0x3c, 0x9, 0x160}) 18:59:03 executing program 5: perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0xc0c0583b, 0x0) r0 = socket$inet6(0xa, 0x3, 0xff) setsockopt$inet6_int(r0, 0x29, 0x16, &(0x7f0000000000), 0x4) 18:59:03 executing program 0: io_setup(0xbe3, &(0x7f0000000000)=0x0) r1 = syz_open_dev$sg(&(0x7f0000000040), 0x0, 0x0) io_submit(r0, 0x1, &(0x7f0000000900)=[&(0x7f00000000c0)={0x0, 0x0, 0x0, 0x5, 0x0, r1, 0x0}]) 18:59:03 executing program 1: openat$proc_capi20ncci(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r0 = io_uring_setup(0x6d61, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_BUFFERS(r0, 0x0, &(0x7f0000000100)=[{0x0}], 0x1) io_uring_register$IORING_REGISTER_PROBE(r0, 0x10, &(0x7f0000000200)=ANY=[@ANYBLOB="000000000000000000000020000000000c0000200000000001"], 0x20) 18:59:03 executing program 4: r0 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r0, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x49) getsockopt$inet_sctp6_SCTP_PEER_ADDR_THLDS(r0, 0x84, 0x85, &(0x7f00000001c0)={0x0, @in6={{0xa, 0x4e23, 0x0, @loopback}}}, &(0x7f0000000000)=0x90) 18:59:03 executing program 4: r0 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r0, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x49) getsockopt$inet_sctp6_SCTP_PEER_ADDR_THLDS(r0, 0x84, 0x85, &(0x7f00000001c0)={0x0, @in6={{0xa, 0x4e23, 0x0, @loopback}}}, &(0x7f0000000000)=0x90) 18:59:04 executing program 0: r0 = syz_init_net_socket$802154_raw(0x24, 0x3, 0x0) sendmsg$802154_raw(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000200)="811008", 0x3}}, 0x0) recvmmsg(r0, &(0x7f0000000680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, 0x0}}], 0x2, 0x2043, 0x0) 18:59:04 executing program 5: clone(0x2000000002000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x8420, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) unshare(0x40000000) write$binfmt_elf64(r0, &(0x7f00000007c0)={{0x7f, 0x45, 0x4c, 0x46, 0xa6, 0xf7, 0xca, 0x23, 0x180000000, 0x2, 0x3e, 0xffffff7f, 0x298, 0x40, 0x190, 0x9, 0x2, 0x38, 0x2, 0xfff, 0xce4, 0x1}, [{0x4, 0x9, 0x8, 0x956, 0xfffffffffffffffe, 0x800, 0x3, 0x6}, {0x4, 0x80000001, 0x1000, 0x10001, 0x10000000, 0x1, 0xc2, 0x4}], "089b732a003f5cf99adacc2a24bf446cf076ced42a9a371d742462a8e3703fdcf0c4bc53f8b5ac736e4fe77b89911db9370f8d3db289138cd678713a6e50c75fc4de17f7a7c87e025538ce3f9cca4f7cc07b9cf1116ff7dc814edf69a9a973e483a7a53499191dbfdb85eb856c963f864cdb52933c81dbc9ac9cec0faf25c11ad0c5ac60f976c585abcbe265990200d5a10db60640d787b52e8afb297e484add7668fa", ['\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00']}, 0x953) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0xb635773f06ebbeee, 0x8031, 0xffffffffffffffff, 0x0) readv(0xffffffffffffffff, 0x0, 0x0) ppoll(&(0x7f0000000040)=[{}], 0x1, 0x0, 0x0, 0x0) madvise(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x9) pipe2(&(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}, 0x800) openat$cgroup_ro(r1, &(0x7f0000000080)='memory.events.local\x00', 0x0, 0x0) r2 = openat$dir(0xffffffffffffff9c, 0x0, 0x419e02, 0x0) pwritev(r2, &(0x7f00000006c0)=[{&(0x7f0000000780)="c3", 0x1}], 0x1, 0x0, 0x4) ioctl$LOOP_CHANGE_FD(0xffffffffffffffff, 0x4c06, 0xffffffffffffffff) 18:59:04 executing program 1: mkdir(0x0, 0x0) perf_event_open(&(0x7f0000000200)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7b}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000080)='./file0\x00', &(0x7f0000000040)='cpuset\x00', 0x0, 0x0) stat(&(0x7f0000000180)='./file0/file0\x00', 0x0) r0 = syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x200000, 0x7, &(0x7f0000000200)=[{&(0x7f0000010000)="200000000002000019000000900100000f000000000000000200000006000000000008000080000020000000dbf4655fdbf4655f0100ffff53ef010001000000daf4655f000000000000000001000000000000000b0000000004000008000000d2c200001203", 0x66, 0x400}, {&(0x7f0000010100)="00000000000000000000000082e36724c6f34caa846ed2e527703378010040", 0x1f, 0x4e0}, {&(0x7f0000000080)="03", 0x1, 0x640}, {&(0x7f0000010400)="02000000030000000400000019000f000300040000000000000000000f002e69", 0x20, 0x1000}, {&(0x7f0000012600)="ed41000000100000daf4655fdbf4655fdbf4655f000000000000040080", 0x1d, 0x4400}, {&(0x7f0000012800)="8081000000180000daf4655fdaf4655fdaf4655f00000000000001008000000010000800000000000af301000400000000000000000000000200000030", 0x3d, 0x4800}, {&(0x7f0000013900)="111fc0d901000000803a0900803a09000000000006", 0x15, 0x30000}], 0x0, &(0x7f00000000c0)=ANY=[]) r1 = socket$inet_udp(0x2, 0x2, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, 0x0, 0x0) fchown(r0, 0xee01, 0x0) lsetxattr$system_posix_acl(&(0x7f0000000100)='./file0\x00', &(0x7f0000000140)='system.posix_acl_default\x00', &(0x7f0000000380)={{}, {}, [{0x2, 0x0, 0xffffffffffffffff}, {0x2, 0x1, 0xee01}], {0x4, 0x1}, [{0x8, 0x5}, {}, {0x8, 0x0, 0xee01}, {0x8, 0x3}, {0x8, 0x4, 0xee01}, {}, {}, {0x8, 0x7}, {0x8, 0x1}], {0x10, 0x2}}, 0x7c, 0x1) rmdir(&(0x7f00000000c0)='./file0/file0\x00') r2 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r2, 0x0) openat(r2, &(0x7f00000002c0)='./file0\x00', 0x401, 0x1) 18:59:04 executing program 2: r0 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = ioctl$KVM_CREATE_VM(r0, 0xae01, 0x0) syz_kvm_setup_cpu$x86(r1, 0xffffffffffffffff, &(0x7f0000fe8000/0x18000)=nil, &(0x7f00000023c0)=[@text32={0x20, 0x0}], 0x1, 0x0, 0x0, 0x0) r2 = ioctl$KVM_CREATE_VCPU(r1, 0xae41, 0x0) syz_kvm_setup_cpu$x86(0xffffffffffffffff, r2, &(0x7f0000fe8000/0x18000)=nil, &(0x7f00000000c0)=[@text32={0x20, &(0x7f0000000100)="0f32650fc77600b99b010000b80e000000ba000000000f30660f388083000000000fc7af9cd40000660f6f5700b8f62b40cd0f23d00f21f835300000020f23f8c4e2d9dcaaf5aade9a66ba4100b800200000ef360f8a0c000000", 0x5a}], 0x1, 0x0, 0x0, 0x0) ioctl$KVM_SET_NESTED_STATE(r2, 0x4080aebf, &(0x7f0000006480)={{0x0, 0x0, 0x80}, "be77f645fa0faab4173328e03e0e9f020bbc798c84be65bf762199e269b6d15af3d542e5a531a895866fbf13910d95e922d6aa84d68924efe5e444b34d9df08a868ae23c677546798d6ec2c17d6e3f87f0d757c2078c9325c641fea9938ba4f20ebb2577f51ba467d973398c7fa94be4e2abd427b7ad4385c63e630090759c2a6c768a973d0b1e7244e494d5925d9d9f40afd544ff001fdb8de7af279d8700739c11327a76f8bc32743c959d8858b276c211222f40206257be84ddd07b20d8b1de9b5390ba5eaa289c0bfdf6b5636b7acfac5159e2e775395858847e3e28da4ed237027cd849991ab91e6e5dc61b9936de574c3b26a2b0e303386c02ed1bd0a5acaf8a9271e196bc59fb3d7d6a88383d53302680fd8ebd0e75fa67333a6fb9da0333d6f87b3f628136a4b9ec1c2f4cf3d5ec900ec17d48e3f741860d963ec6e629243d06b547374ec3f5a0a8e71cdd67e8f591d68711ba4df1f2fc62d9f54c6f7b8844c8ce569fb7f983a631250e77374780413ab37235afdefb70572e79f35d36406aded61bcf76711aacf325b2ac1f78b4ede1239e36d5d644c7a81cdf6b95a1e3aa6c2f70d889654572d1c37d6570102c2525a9b3fa28a88c83ded573a896239900bd365dc0323d4921810479a1ac83b64f0f9b2008eb51832bce90105dab379b3d99f6761d4cf438d92356c563c982938fe83026258aad0a7d9f5eacfa359c68ec271d3ecf9a57d3eec56cb0bcf1bb0adc6c297d6e5b101640d39a950bcb54faebed4f850e737b5a2837054bccbecfd1c28e70a967a350d21867ea95b2cdfe55fd3edc6e1f4db06a5e6b77a333af48e92899e074794f3b4687dce6d45cb33433e922b1602e767164dc0e760d14b4c70f304de2cb56ca5ea35719f492480e48b9007e4073a8e02450a93d3932971b32aca283773bbb7974486478d380d8524c0eee27ba19d9c51196494bc3f2c41c1ddc72b0b9d97ca307022baf742cb69b45de669e3224c1eaf4e6ec7bb76f921ad3fd01e1138eda10e945ca95302c1729adf6526041169700a783f767632e99b55eac5e4ebc25b63e11649a31e1dba33445a36b40c7cc7ab6450cb4853c69a9f1eb00d466f6c98f297d3e4882fd4d1a9dff0786cece0dd1b03fd84f982b493349f32e49be255102e7bd1475e25574a992da6907a0e6bce48d4601b51ca05798a0e8b5faa9ed6700902e4626b866b4219e3880277bca07f577def954fdd64e089622ed0eec558759a9b6d3e512b330fa30e31403053a73da1747a7874f5b7a9fde4c0f9f29a27e795e275c9f6c33d9db7f370f148a790811428b2f96566bd0e2b148997e69b0ffe1a81cb04d43ce6a24ea2a9414b930fa1330153cb20aaae484e515393b9ddf9d029806c35d5e956462b7cc7f1c7995006ffeae1f1ba1daf8d43309198bf444ec82c670800d5dacd600924564931014b1e834a38274c6560784572e6d4bf8c4a5a1ee5edb2f4ea5fa9f07b11d3d1d88b993fa662bc04dfb9ffa9e534f1622efd7f823346aa7e0a988f56be531c73f34439df61f9737cca8b93d2c25695138c70c469298c3a114c89a8c3409d4dc18e7bd0158631d0b936823a6dda814ed50f83862058d1ecc19b2e1195c910edb5e7164fbd403de0beb5d7feec901a5a373afa1162be95f0e71e50d479e33494d7c98c1cb2ac886c81610678923685fa9f5fff2584c89130b7d2ac78317e531bb2fcade76520cf8bec450e31eebfa5ae2f78587c572d36d56a69cf3f2cc9e15b77c11877d27e8af0196902d7f94646f0294b4507ae4461397ef21b24a2142f740460e1eb1935cbaccd14f71f21d6fb7144de99154f037cf31e9f30da3c935950c7d1c859096d44b57e7bd37147304b2fe51ab63ca7c4031c1f07913c8a894a6b0573886d7a0a62cd20a0f433e541a43808465eb82af5bb9c819a74bed83cf91aa180442c28b9f4d69dd7e728c7734dd3bd3e277e67e96ab9f09e083c0a6e42fe2bc5dcae9a2deddb7f763e62b0d8adacc00af734bb9e978c13309468a2f942f5d2c9f7cafc97dae2f542ef33be39952fa70ee3e2ecb3105c1a490db73fcf46a3645de10e1cb335ea604f41d10b723872c26f20a71f44b1301fffd601c6a609e0d195bbcb1203cd23fdb3e3f59fa8ae5a484881c34706bacb6a479fa7c9cc6920613dd6903bf046493bac060f046efc6ce43aafe9a3b735c1cb283714548fdc16a2ce9d9dccd77f3b8037132ec1b1f1d965932a9ec4b20efe1f2212c94511b61799b5bd29be84e47d1c1209af544bb4c4820b4897fe00fd583b8ae5394354d1f2532d0801f202ba31bf01a896ebea5302167cf9b0ed71e793d9572fac48d75724caa57f99ba9db2113f5fa52d19356ed1d0c85bd60805952113e521a01444d6a6a502144691a9d32363284410e967626c720cdb3444a56b1b7043047dbf8e5f1b5177c82a651710eaed591e1d4ac5ffaf85411f7c3c3e58fefb5e0528f74b3f78a0b31de68f1e31415a7a37010be818b886c28cca1bf68db068929bad71bc6b4ae2a4c9f2c9bf98f15164e6ef96ef4121c191e5a94ca431b49c475f02acebc42d2c6026e4f7d595e5677947bf6cc0d6f95d7838f91cfc04492cebaed4374984706465ac83a1acbb55450f5b5e1e4cc00a88c334afc4d337089d22c443bcdfb3d268a3e57f563b9732cc3f5d8b1fd98a6f44e3b056cbeb65946ec917ef093c3a62757f2b27e6b4873ae7183b5b9a6528a576af69449df90cda4bfad6c54bed67fecc6fdc624183aecb5072002c8dc9d45505901c61489ab31b7d6cde6943f042953df648861b68663291117f3deb74d3f9e9501d9d50b095baaeef21aca82e00203c06ce103cc923e6f02ab481eed2da0a4eedeb827e9d7961f6d972f347c649e706dc0259d697a6a5ea1ba33a6f2c16beed92b58fa290026c728e91f3de285a74e56e968c5d174639a915b5e53d7b1e5566b1a89f09434afb2a2ff1fd00d13e7ce5a3dcb8e628f39a6c6825acd4b7152a777d21485f6360af8b1c62a4a29f2ad98d9c393530187c14b4defdfc8ac12433be7f56a40ce4087eb1f7cf949e4e9b3c612e4953716ab027a36ce839f1d2815c289d08e0e500630c2f54344d6549b9645a4b31648d25f71dc7a43651aa8530ccd0cec2f96a4385b185823111c514b5beb817a98824f301462598f03919ec52c0fdf5a522f3e4b250ded3089e0958bb20e5f936c8ab4fc00316ce483254f6e2abc024835acdba239decc60fcc316cbb5fe85db2e22ecd1259c607b575d836222d7a21f0fccdc6d4f90c487c66dcbe9d17f6af2edc30b57189f009072fa5b46e1f49aa33a6546aea60202c4e77066e2f487b2bd36f3178ea888488ae52fad830868172d8f2b3335db98a83c45e047ba93eb32e08a014d13fb8b9f3b54c16adaac8a95c250051baaa3667343a3df51ab7dccedcf4410482fb24ab337285d4c0d182bf00050c5cd2f8a1f7954fe0ce1c2325dc159445464327f0c463dfdae8c944db603ceab504409be7e3316e679960b63e1935018641f0d30d40fb4f83faa2786e7284b0adf6fe0ae04f61c362be89177aa7a27cd00a1c101debb3fbae04b8b20fceeef601049626954f0436470eb4d344fd53c34eab4fca401bb6aa64c1d1891ca88300ce5f8b9b7badb64a5aa3ce8ea848e288239def4602e4812c66503ccc2a68b734d97b2fe71e321e09275bbc727e4c02ce1a967f2f7c5f02f658c5e449a1c718a535561afbddd05ad28559c6ea8a5d19298eeccee69818b69a833b972128e153306522a3733396e25e3a2175443715b0926ea967609f73e2529fa4b6c346e32543431d11f57f557c71ff6b789d9a78e8039f78c5089586aeba7a584b3d6b753f8633d062b5cca3639eb95885027a1b78a90f79d33e8872b455a21618b76a4afd3d704849b067ab8f968bf528fbdbdfdd34e84163d644e211e32f9b5b91f86fb815890f6e405d7324fd6ff84fea268cf4d613d8b8cc784fd434f317dd77ccaf40d974c43d70ec15306c691ce9782267b20b35c150c1c104adff5437068f7c9dee058c08403024e5ed1f35bf1b6db213af8fd0293b230ddc7a405e1e3e584292cf6d9bd4ca1d0c325ecf37c57134320f79fac3f26874b1d595d0aacb7bf454bc4e15f755c1c7e2d0951d7731d8bf27c8002f611a942d633c9e0203ee9f848de15966e6c993d790bbc26958fdc3ff4e62b971697855ad0980d3cf6cd79c0f2f0d41eab6d2c67e83295afcbee60179e0997ddf9b15002b7fc058afa567034dabc640790aba2419a5ccbce25abccde586373f4e31f3436e5bab2e156b4cd6abaadbd4e991cb4a15cdea2202b13bce716e1df40d6bcc275f14c152ffe6294d2b5a5377a9da546490a0ff9ec3f27a0a6070f1b0d72b75a74ac1e764c4670b9547faa728500233dc410132d800bddd4e81272f1ace1fa8186e1b68e19b23ee611b2c9119b094764fd0720212c14f12f1835596660e08dbaf1a28c2ecb391094e8decb500484a4f9de412781fe084695a243d474471a3d6abd4ac640cfb7da40e0327defce95a8101a25f7145b55db0510dd090af63fd65f9003693b21b2f3d4775c65707fed78474238d6453592933b2265c3836d0c775b95e9739b3de3856072a5b43c9e3024e8843b2522e92d12aab4a636c68af12722ab38d881f4c97118014db986f3ec966783b93d81d1d70e3ea611482df745256c3ef9c6c949c6afc6929f69d9427ddde81f3f278500c586b3bb736c2fc7713ad92ed13640f4051e72b38568e3f211f75261ee6517de0b980076127d7dc00a1660a11232325f7ac097f46e0ef4493cd7de875d14056419373d887a821672d894d32c810464705e92c9abe32967fead2464c8b2f693f45d07a8160f59ec046019b016ee8b07764278af8c6b22b4cc079f406c0ba898332aa8911b026c75edd02d5a40f8ed9c1a3d39c1893a0affe4b38c77305429562e9d0907179753051cbf13ff936091334fe24a53816d2aa5e2e26993dac3f2c573b0001152ee26b633afd966bfb704050227160bf292bbcc35f78a649bb7f4fe1783a6b10de778519c8a71f1381cc67a779e51ce3097e666d964728d55708e76953826c7659c3647d3f3cedf9f1b45b27f5735bb8d78d874bf73147b738b9c0566a0d2fdcb17f85dc712462e381ba1466d92d903ba24d0cc17ddbeb7bd80b5525d7236a8add54d4eca06fe4cd0d3724403c7ad09f22eb2fcb4181eddde271be821579b7382bbfe36dab5079811e62842da65165c27c181dfed279d5ec12a1c0c13541760c2fe5cce95c6892622229ac24a7211ba43e513077f34342b61611a1ab10b6c51f6e3a06be0716d7d1abc82f5903e32f1e6e3e85789c1b8f140bbe1903b9677ec9655e171bf1f4d27dda003c27d4ef0e043d0def451dbc0f48cb6cb605b1e2d27e9fc9db10c0b571b6805f316b00b581d0d7358f83e14d1b4290e61fc0d0bd97334f31a547350c00877c90bcb591b98986c19d9d477f7dc521ac43d2edf9201ea61c43e6365e795bfb44b0d90ced7b9d34a849dec495d79cae7769c721d7cd17f1503df3d113c49fcb18449ff180d39c94717ae8fcba7ee1d8cf75873098a7a697d5f5d7a6eeef14daf146710ee40c94ff8ea9ff048d108688776fd074e72658d6ea43f42ea03883f70f45c7b86d3eb0bced0f3a60b6da510833728ffdb82af9a34c5fc86e0130861ac66c68b784300", "204b9e1804d636301150775298e6490040d0ecb72371cfe0ccc258d2b4450458b909ff0100000000000037ed25df0ce2b046ccc47e3501ed7a53e69d95dfb761f3fb81659983876f915b21b4b91270b4607875b751136514bb42b1de575e5ae05e98fd37dde49acb6a8e7f7c592ceb8793d00c84515e9b091fca8056f69ef47c1c91735af04b3077a94a24147489c6bbc3d63a76ba4eb1e6adf014106f4b0117fc6a2b2c84ca9e6c40fade373fd49f657e5e828399868d39d2a9d8cb3f4508e156d31ded826a64d84b19ceb0c13d9566f14866028f00408428bc6b9a27761fb13e70561fa8bb45bf2547baeebd7c99e01c1ebdac09ba75e3f67b2bc6898ca2c8e6c2b09efef1e688c74fe8e214b657d3325725531f9ce71d59532adc69f40e0b821fbd14558133f9fcd9d5ace9150703b5879f74028583dccd4984a9fedf23f1f6b8c501f9a99762079404f109e6d69b025edbf2d3169e44f14b7e485644f5afc2d0581d8404c23bcf2c0bcd6d3a6fbc658721e74546ea52d57f259e841e87f01ace9d7fb10bb4356abffa306d91963914bc144e486f78c048aafe20eae27ff53250de7bed8c4167780c53facfd741b93f53d67a60eba1527701896bcd29a6cc20b9390582421eb0e5dce7a66a94881904dd91c47c59e8b7219adae86ba78b230306829368a56dc908245fc72886c3b18facea659b27466d3c6a85b541f20a012660319f8f4ba0faf0d83d28ac63ae417323a0f75b88235d1a41f662b34ac40ac19c94f227567860a998f5e4d8f65b930c1a1209ba04cc2406599914e8ed7c98d8095a56fd29920c47c6221bf7e6a076dfc90947af9468d8844731ac3923896f25a8402421e24e1d328e5b9daeb97048b87e3d374874071931ad791c1f03324ba01d463364a5bb1dba7e3b807aec9c333703397a45918c73b443dd46f7b289736662ad833302fa89567e44c3de8e2f87bb5f8758abf6f888ad26bb5ed48a4bd828d8fcf5c01cf7588009c1a6c35e94142950b3bac8fa0af15c2f30504cef3e544b132e4096a836aa49336cbe878d2e33075d0712adc3e75b9f9bc7ec420f123084eb296119171535c4fa49d460d4444eb309f424ec13be89ff6641caa089da262ff89c0d4b1a86fac91361a7a124a0e4b27de253186e10671d2532d600f6b4089dc690f600363092ad93fb62fbab9e1a96caefe31e4c117420fd1df64e4e0cf4967cb026a0e5bd444278553c2e58e19ec5a6db3921fab8fa0748965e523659e54a3e01190492f9b01811d06b13d8c833454ab5a93af8a9ad270555d682d8c78f074da17d6ccb7ded5b5f3c30e3afb3c0e4aab6ce79e00d42df9a74f486aee74c0bc021c209000000f5e79678c45bac331d6ec24ecb404296dc9e90b2c191fc14c53505e92587f43a5eedc56a6408048d9dbb8bee8840a656952cb361f0d76baa20939e6e8ab917e12b76dd812b95e68c90708d7cd81aa18002eea116f4190e49d1f628a509c8fb65f393ef5bcf7d1b9ea289e0532ee5f46e65709e84aaa7a6334c58eaab5c3cced88fa3e9e365ace119a3c40dfe336abbe6d3a09dfd895cdc3daae26ae9d3f68a3a2184ac5f6972ef034f1f9f0d4100a55b8638db0986f362a23b599903909a5a6193fc2c6e54adc965ff5d48bc1ed1b6ff0ab226b9598f70a13ca0a0b2d2cc05f17449bd4cbd224fa75810955011d5a401348c0b75546c1fd86824ced7b0c79cb4d13a3722aef6f7a0cb49f76a372ff133736f04b67bf6a74d5164a227f4865dfd15181e0a9e5dc53317ffb04a7ab1fba87d3b34bd1cee7c6aef4b3ebef183c9fcd4daf091ef1f5f2709a7eb4a648242c408e7d5b10b766e0f648c2189c4956474892e379a84b1f09f13ba589423e43b4b000067b1d0c976fb64903ea2d22e2612d9dbad91536a986f44986d74578f2cf378dc6505cc26261548a080e11d74fed2cdaa90479f0656fd927f89a0624f4ce943981ffbec2ceb27c7fb6e6ee7df7c2d26d7151f1dadb172a0017787c5d32d6408b6662c8f5348f34e63649206142164f7aa076b2c83bfffe44126ee923f0b9bc917e52308373553cf19e6798ac83ace350be47f445ef0d268c2a4fc67998a5907db42decc63fcfc30df0a4543da178e442aec97060edc209e34849f6beea0e366eccc80b87c1c16f89e5608b96c176ccfaf6014a619b83d72c5a89749cf763fd76c6ae82b6a1322674838ab9e5f9a0db7aa8b7d27db308edb664fc0197756f6709df36d9f6ed678944e18455a8d49434f9a6f223cbf52b6a1ba266a55331ffe7e83fb4130c2f5528626c4e451d8bac1da046dd59249fe41b6c8a36e82346918e0177c876f44101ff9f7721d8fbe1eca04e13ba8db3f5bd01c3661df0d6c8a24d45a246e0ac80aed4178901a71a939da4622592b3a8d87b3ae35370530039d7d413455e9d61656b58a1e63aa9bf1a87d8bcc6605c3167836f82ba01f54934e2d31d7463e1848ee8a2cca55a029d5ed37236dda9f278981cdb330eabc6bfc33a7fee5678c38b8e0a9258fa8ce5cb8abc3320d44dd16098df1bbf9d3e3142ec1838ba81785e37dc97fda2797e3cf6b7d6c367737b4df96a242149bbba7af54da91b404fbf01f4ecfb7ebd97c67de2415b3bca3b5f21deae988733dcb547a17aa38c0b98aba60fbb1d57f9e8f005ae6233e5da68da32c7a2778944a2eacba03e3312fe968fa3be0e2ceb4d8526803e7a8f24618b1003860e424da518c9602cb092c9c6b930b72523bbf615ad8330e337e64ff82eb78d9a2384e86afece8aa9d9cb1b7ab27265261a3cf542e1655792ed66b28d27bf4f02d13e93413bfc5fae7dbec15aac85331ae3d4032679988ffd1c1750447f763ebc9ba8f8ba4521b74563af6ee8a996af3707dd03118c3f0d18d612a5105519310f7b8c5eb4b7e3a0d675374da18314d144b5d5d0ba2735dab4efdf68f78285ce4d35032427e23fe7c59c5844879550417dc93d2221fe0ff82c7e21ebba19c01fefc6f6eeb7078e7557f077ca089246e6f3901e127ca4685c191847ae720ce30d41939239b2835d9cfd126faabc88eb80d409d8ec1cdf6070c55109bdbbb668fd56c6ebd3503986cdf5ade19903a85516f0ed87872f397e6244b0f58c70b8dd0cbc408dd7a87c42d672d31fde7fbc31b3acff4be744b933ec0645f76b52481ba6f50a25a98f89d9989e347b682a459eb38004d0de0a7314f8319b1e0ce5152a4928d7f59769347a7f48af595d028b5012cf5b7fc081cbec3c5ad30801947b5d3f87a242b05691ef3f46f0ba35fa6ee28a966ad42e34ef6192cb6e5de41411df4638c825688abc1c8f1fa7b2eced5ae40a5d35d7cfd981f4dd46a91e8f123187d8e99a947020cdc4cfcb66ee004232ed5badfa694fd943ed59f01433989e5663a77fd2bbcdbfaad5ab482150f22ffa6b1ae9e99134b320c04444c3d5d71e37c6d4faf82b1297d75a520e6e6c5a0d7ab86dea5245a97b16a7690f50e9abd452da33c58974cb63e4711fece83cf1251c6eecc7c9a887b0a881f148b6c8fa3749ef09661484d000000000000008f5f1d1ebd9a511f5732ed60a18032d68dcf34a5914b1c24275e6c3d331a8c454e4c615dc5f6ce4de1b44fc755da73ee0b000000000000003eabf4046961625ee82c406e08359b49785a1cbe9822cada3375da9adf55bd50e156a314f10107a3fb880a944fa3a0cdb4be2234c19ab26f8075c6389a0a6062e82050b493a30e617f728b8d0ced0b69da60c6fdadd95ee1c0e656b63ecc72a491e07bce4c3df3761e51bb327a86d55a375e4f5859a8b179a47f4b5b8b85fed0db916e31885d0ad185d6c7e79449e282a5d10a7cf86d0305a2673cd9aa834d130fcb1098c0f69771ae23e2b49cdd3d39be17fcc309a282486bf0e0829a0805a036b0b1e357f03a861857312dab3033f00957ff6f03a35240724bc6adf429090f555aca563ffb5e4b67c75486149f2495971bf653617f29e50d59da32288afeabc768787d2e830c70d5f0dbd8db5e9923b8893f32c4cdc0d8130caefade59d7f5e270f8b5487b69815dd8cec6d3dfa3ca308987f2970ab3e8714cdbae27dc22fa434805c9284b904840a92bc76490c15c6a04df137940d48f7ac6285f858611376f447ebaf11ce4014066d57e5fa579b588e0d795fb0322d1b8606faf9507092be3e320184a5324df47792e8b015ee27ace73b0bc05f3eff2c2a9ee45752df32a85b1ad5679aedbe40ac59511938929e210a409e538c139d1fb93891d2b9908f915b9c556788bb8926b6a96923038a119eb68bcb528a42e97f8fbd49e7d5bb3e51987cca590ea8a18e049f64d8c994d63a707c441e63509f909adf5f7c26d36714bd56307513003f8f85f20c8fea4248627d2f19891baef9b134a8ecb6e3da6232c5b818d7469645038312b6b952f782f28ccd199367a51f750927e5f11ef04cb299dc7ba0c24500134d3a9a0a4f62903ae930f5ba49c39855ffc4aba6cc9d400075f094875db9ebcbcbb35309421d08a928b0216dcbbf718761b01b4d41cf55b0b2bf4c89603a61e5ac2f5bf5236d4bee90617e1b2fdc3a4540db2c89561c1cb9b1e28436013546e654e36fa328097ce8a4baf5a2fd78f9bca617bd4de062dbbc38c7356232b385823b6c604a401f43f5864111eff29045c12b6c622182e097caa5a9945133375b46dc0e268e860dd58b62403c41393f02c7f1d23a1d0daad5d2eb7a085387ea6b81ceb6191d5ffa7f58848996caad4796ee8d9e1bad072455a37d8b64888cb4007f344783afca22db07a2ccb8531c6a9ec9bffdf1f949e3fce89f623119595c5b9bfa51893ff36849be61ff02939360a5d5b0e05d22aa3a1f16c27103edeb00c0f763bd4251805ec8d894692cd1636b4b1c96ab613896c17b2fb8a414a91463d54f145e1d49378e726e5921d8cd34aeb176a36701c9b75311806efcf402d4345034d7fd5165857bd2cd07b32a18334a3cf358dadbc8144b806120805a07714d8d0029fe0db7958bbb69b9a216e5945fdf0b892665c0bad2cd822797d5c7223094cd54042c781fba9d7f05a169f390225385d5c055896dc8a620a637a7c73ee77fbf2152fb62af9bcbe01389dd846724fa24ca6088d2bddf9bcae4d9e11f86266e4d87f6b11f3721c30c3f48ddfecb7623802c7e3f595b088473747d25b70bbdf8920924c6bb9e202e6d54e340a469e8ecf66b49dda0036a7d071492742593c2e02bd7bd703774f2ac8c45dbfa1f8ce4c205a05064362bf2819e80bd406367a86ece3f5d54b43029b3f7fcc2378c5e33e8de66fa5f3c4974310c3ac4d2ab1234b1fea14d71512c578dfab154a74dc66c8a5ff983a41e02c57c58cd9c3a77d22f15f8a6abe41de51ce4a92151ee25c6f2c4feb0453b4f86fb4c7e19063b871ff6458b2ad51b992df6b16de3a5a2f5935c85d5a8709d82943c645f6199e76b38d718b86945638d92daa15aeb9beaa53028a425c6ee90dbd58b57f4a748ec0037fca725812aaac8e201d5121c06c9d3bfcbe799b9fa28440fceec78a5d39a112626bd0f9e530cb5573083e6b3b0ce5ef60e85ea643331d45663f309d75d36c88ed56abbac74672daa72c2f180ab5d117d2ab17db9e36a807bcaa62a07aa5486d39d63f64d23f03e58f6fa346b39005cde05121ecc2146ae982d02532a2deb90d8b9cfd32ff03a5294933292fb3d58760bc81a72df0e602b9b4b7e407bc542924e9763fe0d4bd5346ccb9e10b1ea7dade31d4bbc900"}) ioctl$KVM_RUN(r2, 0xae80, 0x0) 18:59:04 executing program 4: r0 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r0, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x49) getsockopt$inet_sctp6_SCTP_PEER_ADDR_THLDS(r0, 0x84, 0x85, &(0x7f00000001c0)={0x0, @in6={{0xa, 0x4e23, 0x0, @loopback}}}, &(0x7f0000000000)=0x90) [ 1593.758019][T22425] loop1: detected capacity change from 0 to 4096 18:59:04 executing program 0: r0 = syz_init_net_socket$802154_raw(0x24, 0x3, 0x0) sendmsg$802154_raw(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000200)="811008", 0x3}}, 0x0) recvmmsg(r0, &(0x7f0000000680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, 0x0}}], 0x2, 0x2043, 0x0) [ 1594.069912][T22415] netlink: 'syz-executor.3': attribute type 11 has an invalid length. 18:59:06 executing program 4: r0 = socket$inet6_sctp(0xa, 0x801, 0x84) setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(r0, 0x84, 0x64, &(0x7f0000cf6fe4)=[@in6={0xa, 0x4e23, 0x0, @loopback}], 0x1c) connect$inet6(r0, &(0x7f0000000080)={0xa, 0x4e23, 0x0, @loopback}, 0x49) getsockopt$inet_sctp6_SCTP_PEER_ADDR_THLDS(r0, 0x84, 0x85, &(0x7f00000001c0)={0x0, @in6={{0xa, 0x4e23, 0x0, @loopback}}}, &(0x7f0000000000)=0x90) 18:59:06 executing program 1: mkdir(0x0, 0x0) perf_event_open(&(0x7f0000000200)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7b}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000080)='./file0\x00', &(0x7f0000000040)='cpuset\x00', 0x0, 0x0) stat(&(0x7f0000000180)='./file0/file0\x00', 0x0) r0 = syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x200000, 0x7, &(0x7f0000000200)=[{&(0x7f0000010000)="200000000002000019000000900100000f000000000000000200000006000000000008000080000020000000dbf4655fdbf4655f0100ffff53ef010001000000daf4655f000000000000000001000000000000000b0000000004000008000000d2c200001203", 0x66, 0x400}, {&(0x7f0000010100)="00000000000000000000000082e36724c6f34caa846ed2e527703378010040", 0x1f, 0x4e0}, {&(0x7f0000000080)="03", 0x1, 0x640}, {&(0x7f0000010400)="02000000030000000400000019000f000300040000000000000000000f002e69", 0x20, 0x1000}, {&(0x7f0000012600)="ed41000000100000daf4655fdbf4655fdbf4655f000000000000040080", 0x1d, 0x4400}, {&(0x7f0000012800)="8081000000180000daf4655fdaf4655fdaf4655f00000000000001008000000010000800000000000af301000400000000000000000000000200000030", 0x3d, 0x4800}, {&(0x7f0000013900)="111fc0d901000000803a0900803a09000000000006", 0x15, 0x30000}], 0x0, &(0x7f00000000c0)=ANY=[]) r1 = socket$inet_udp(0x2, 0x2, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, 0x0, 0x0) fchown(r0, 0xee01, 0x0) lsetxattr$system_posix_acl(&(0x7f0000000100)='./file0\x00', &(0x7f0000000140)='system.posix_acl_default\x00', &(0x7f0000000380)={{}, {}, [{0x2, 0x0, 0xffffffffffffffff}, {0x2, 0x1, 0xee01}], {0x4, 0x1}, [{0x8, 0x5}, {}, {0x8, 0x0, 0xee01}, {0x8, 0x3}, {0x8, 0x4, 0xee01}, {}, {}, {0x8, 0x7}, {0x8, 0x1}], {0x10, 0x2}}, 0x7c, 0x1) rmdir(&(0x7f00000000c0)='./file0/file0\x00') r2 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r2, 0x0) openat(r2, &(0x7f00000002c0)='./file0\x00', 0x401, 0x1) 18:59:06 executing program 0: r0 = syz_init_net_socket$802154_raw(0x24, 0x3, 0x0) sendmsg$802154_raw(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000200)="811008", 0x3}}, 0x0) recvmmsg(r0, &(0x7f0000000680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, 0x0}}], 0x2, 0x2043, 0x0) 18:59:06 executing program 2: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) 18:59:06 executing program 3: syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x10, &(0x7f0000000200)=[{&(0x7f0000010000)='\x00BEA01', 0x6, 0x8000}, {&(0x7f0000010100)='\x00NSR02', 0x6, 0x8800}, {&(0x7f0000010300)="0100020044000100925df001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010003000300010000000100000008313233343536373831323334353637384c696e7578554446", 0x61, 0xc000}, {&(0x7f0000010400)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667300000000000000000004050000000000007810e4070913142c16351300002a4c696e757820554446465300000000000000000000000405", 0xde, 0xc0c0}, {&(0x7f0000010500)="0000000000000000010000000000000000000000000000000000000000000000060002002d0001002caee8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc1e0}, {&(0x7f0000010600)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200002000000000000000000000004000000001000000002a4c696e757820554446465300000000000000000000000405", 0x6a, 0xc2c0}, {&(0x7f0000010700)="00000000000000000000000000000000004000008000000002400000002a554446205370617261626c6520506172746974696f6e5001040500000000010000002000020038010000a0000000e00700000000000000000000000000000000000005000200d10001004531f001620000000500000001000000002b4e535230320000000000000000000000000000000000000000000000000000000000000000000002", 0xa2, 0xc3a0}, {&(0x7f0000010800)="0000000000000000000000000000000000000000000000000300000020050000a0020000002a4c696e757820554446465300000000000000000000000405", 0x3e, 0xc4a0}, {&(0x7f0000010900)="070002003b0001009d092800630000000600000004000000002600004d00000000b60000a5000000003e00000101000000340000e507", 0x36, 0xc600}, {&(0x7f0000010a00)="0400020058000100aa52f0016400000004000000002a554446204c5620496e666f00000000000000000000005001040500000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc800}, {&(0x7f0000010b00)="0000000000000000000000000000000000000009084c696e7578206d6b756466667320322e32000000000000000000000000000000000012084c696e757820756466746f6f6c7320322e3200000000000000000000000000000000130868747470733a2f2f6769746875622e636f6d2f70616c692f756466746f6f6c732f0022002a4c696e757820554446465300000000000000000000000405", 0x9a, 0xc8e0}, {&(0x7f0000010c00)="08000200610001000000f00165", 0xd, 0xca00}, {&(0x7f0000011100)="02000200fd0001008f77f00100010000004000006000000000400000c007", 0x1e, 0x20000}, {&(0x7f0000011300)="00010200990001004c38f001200000007810e4070913142c163513000300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x79, 0xa8000}, {&(0x7f0000011400)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000400000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001", 0xda, 0xa80e0}, {&(0x7f0000011500)="050102002c00010059a5e4014000000000000000040000000100000400000000000003000000000000000000a53c00000200000000000000440100000000000000000000000000000010e4070913122c163513000010e4070913122c17015e350010e4070913122c17015e350100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000000000000000000000000000440100000101020016000100279218004000000001000a0000020000400000000000000000000000000000000101020001000100ff912c004000000001000116000200006000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200640001003bc81c0040000000010002060002000041000000000000001100000000000866696c65300101020076000100f2231c0040000000010000060002000047000000000000001400000000000866696c653101010200ca00010044251c0040000000010000060002000048000000000000001500000000000866696c6532010102008b000100fa301c0040000000010000060002000048000000000000001600000000000866696c653301010200ed000100ff892000400000000100000a0002000061000000000000001700000000000866696c652e636f6c64", 0x1f4, 0xac000}], 0x0, &(0x7f0000000040)={[{@uid_forget}, {@gid_ignore}, {@umask}, {@uid}]}) [ 1595.668717][T22488] loop0: detected capacity change from 0 to 1036 [ 1595.726584][T22493] autofs4:pid:22493:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) 18:59:06 executing program 4: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1595.839783][T22494] loop1: detected capacity change from 0 to 4096 [ 1595.917006][T22493] loop_set_status: loop0 () has still dirty pages (nrpages=48) [ 1595.960824][T22524] loop3: detected capacity change from 0 to 2752 18:59:06 executing program 0: r0 = syz_init_net_socket$802154_raw(0x24, 0x3, 0x0) sendmsg$802154_raw(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000200)="811008", 0x3}}, 0x0) recvmmsg(r0, &(0x7f0000000680)=[{{0x0, 0x0, 0x0}}, {{0x0, 0x0, 0x0}}], 0x2, 0x2043, 0x0) [ 1596.006039][T22488] blk_update_request: I/O error, dev loop0, sector 552 op 0x0:(READ) flags 0x80700 phys_seg 12 prio class 0 [ 1596.083518][T22523] loop0: detected capacity change from 0 to 1036 [ 1596.140297][T22524] UDF-fs: warning (device loop3): udf_load_logicalvol: Damaged or missing LVID, forcing readonly mount [ 1596.309517][T22524] loop3: detected capacity change from 0 to 2752 [ 1596.375127][T22524] UDF-fs: warning (device loop3): udf_load_logicalvol: Damaged or missing LVID, forcing readonly mount [ 1596.378801][T22545] loop4: detected capacity change from 0 to 176 18:59:08 executing program 2: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) 18:59:08 executing program 1: mkdir(0x0, 0x0) perf_event_open(&(0x7f0000000200)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7b}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000080)='./file0\x00', &(0x7f0000000040)='cpuset\x00', 0x0, 0x0) stat(&(0x7f0000000180)='./file0/file0\x00', 0x0) r0 = syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x200000, 0x7, &(0x7f0000000200)=[{&(0x7f0000010000)="200000000002000019000000900100000f000000000000000200000006000000000008000080000020000000dbf4655fdbf4655f0100ffff53ef010001000000daf4655f000000000000000001000000000000000b0000000004000008000000d2c200001203", 0x66, 0x400}, {&(0x7f0000010100)="00000000000000000000000082e36724c6f34caa846ed2e527703378010040", 0x1f, 0x4e0}, {&(0x7f0000000080)="03", 0x1, 0x640}, {&(0x7f0000010400)="02000000030000000400000019000f000300040000000000000000000f002e69", 0x20, 0x1000}, {&(0x7f0000012600)="ed41000000100000daf4655fdbf4655fdbf4655f000000000000040080", 0x1d, 0x4400}, {&(0x7f0000012800)="8081000000180000daf4655fdaf4655fdaf4655f00000000000001008000000010000800000000000af301000400000000000000000000000200000030", 0x3d, 0x4800}, {&(0x7f0000013900)="111fc0d901000000803a0900803a09000000000006", 0x15, 0x30000}], 0x0, &(0x7f00000000c0)=ANY=[]) r1 = socket$inet_udp(0x2, 0x2, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, 0x0, 0x0) fchown(r0, 0xee01, 0x0) lsetxattr$system_posix_acl(&(0x7f0000000100)='./file0\x00', &(0x7f0000000140)='system.posix_acl_default\x00', &(0x7f0000000380)={{}, {}, [{0x2, 0x0, 0xffffffffffffffff}, {0x2, 0x1, 0xee01}], {0x4, 0x1}, [{0x8, 0x5}, {}, {0x8, 0x0, 0xee01}, {0x8, 0x3}, {0x8, 0x4, 0xee01}, {}, {}, {0x8, 0x7}, {0x8, 0x1}], {0x10, 0x2}}, 0x7c, 0x1) rmdir(&(0x7f00000000c0)='./file0/file0\x00') r2 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r2, 0x0) openat(r2, &(0x7f00000002c0)='./file0\x00', 0x401, 0x1) 18:59:08 executing program 0: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) 18:59:08 executing program 3: syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x10, &(0x7f0000000200)=[{&(0x7f0000010000)='\x00BEA01', 0x6, 0x8000}, {&(0x7f0000010100)='\x00NSR02', 0x6, 0x8800}, {&(0x7f0000010300)="0100020044000100925df001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010003000300010000000100000008313233343536373831323334353637384c696e7578554446", 0x61, 0xc000}, {&(0x7f0000010400)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667300000000000000000004050000000000007810e4070913142c16351300002a4c696e757820554446465300000000000000000000000405", 0xde, 0xc0c0}, {&(0x7f0000010500)="0000000000000000010000000000000000000000000000000000000000000000060002002d0001002caee8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc1e0}, {&(0x7f0000010600)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200002000000000000000000000004000000001000000002a4c696e757820554446465300000000000000000000000405", 0x6a, 0xc2c0}, {&(0x7f0000010700)="00000000000000000000000000000000004000008000000002400000002a554446205370617261626c6520506172746974696f6e5001040500000000010000002000020038010000a0000000e00700000000000000000000000000000000000005000200d10001004531f001620000000500000001000000002b4e535230320000000000000000000000000000000000000000000000000000000000000000000002", 0xa2, 0xc3a0}, {&(0x7f0000010800)="0000000000000000000000000000000000000000000000000300000020050000a0020000002a4c696e757820554446465300000000000000000000000405", 0x3e, 0xc4a0}, {&(0x7f0000010900)="070002003b0001009d092800630000000600000004000000002600004d00000000b60000a5000000003e00000101000000340000e507", 0x36, 0xc600}, {&(0x7f0000010a00)="0400020058000100aa52f0016400000004000000002a554446204c5620496e666f00000000000000000000005001040500000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc800}, {&(0x7f0000010b00)="0000000000000000000000000000000000000009084c696e7578206d6b756466667320322e32000000000000000000000000000000000012084c696e757820756466746f6f6c7320322e3200000000000000000000000000000000130868747470733a2f2f6769746875622e636f6d2f70616c692f756466746f6f6c732f0022002a4c696e757820554446465300000000000000000000000405", 0x9a, 0xc8e0}, {&(0x7f0000010c00)="08000200610001000000f00165", 0xd, 0xca00}, {&(0x7f0000011100)="02000200fd0001008f77f00100010000004000006000000000400000c007", 0x1e, 0x20000}, {&(0x7f0000011300)="00010200990001004c38f001200000007810e4070913142c163513000300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x79, 0xa8000}, {&(0x7f0000011400)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000400000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001", 0xda, 0xa80e0}, {&(0x7f0000011500)="050102002c00010059a5e4014000000000000000040000000100000400000000000003000000000000000000a53c00000200000000000000440100000000000000000000000000000010e4070913122c163513000010e4070913122c17015e350010e4070913122c17015e350100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000000000000000000000000000440100000101020016000100279218004000000001000a0000020000400000000000000000000000000000000101020001000100ff912c004000000001000116000200006000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200640001003bc81c0040000000010002060002000041000000000000001100000000000866696c65300101020076000100f2231c0040000000010000060002000047000000000000001400000000000866696c653101010200ca00010044251c0040000000010000060002000048000000000000001500000000000866696c6532010102008b000100fa301c0040000000010000060002000048000000000000001600000000000866696c653301010200ed000100ff892000400000000100000a0002000061000000000000001700000000000866696c652e636f6c64", 0x1f4, 0xac000}], 0x0, &(0x7f0000000040)={[{@uid_forget}, {@gid_ignore}, {@umask}, {@uid}]}) 18:59:08 executing program 5: clone(0x2000000002000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x8420, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) unshare(0x40000000) write$binfmt_elf64(r0, &(0x7f00000007c0)={{0x7f, 0x45, 0x4c, 0x46, 0xa6, 0xf7, 0xca, 0x23, 0x180000000, 0x2, 0x3e, 0xffffff7f, 0x298, 0x40, 0x190, 0x9, 0x2, 0x38, 0x2, 0xfff, 0xce4, 0x1}, [{0x4, 0x9, 0x8, 0x956, 0xfffffffffffffffe, 0x800, 0x3, 0x6}, {0x4, 0x80000001, 0x1000, 0x10001, 0x10000000, 0x1, 0xc2, 0x4}], "089b732a003f5cf99adacc2a24bf446cf076ced42a9a371d742462a8e3703fdcf0c4bc53f8b5ac736e4fe77b89911db9370f8d3db289138cd678713a6e50c75fc4de17f7a7c87e025538ce3f9cca4f7cc07b9cf1116ff7dc814edf69a9a973e483a7a53499191dbfdb85eb856c963f864cdb52933c81dbc9ac9cec0faf25c11ad0c5ac60f976c585abcbe265990200d5a10db60640d787b52e8afb297e484add7668fa", ['\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00']}, 0x953) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0xb635773f06ebbeee, 0x8031, 0xffffffffffffffff, 0x0) readv(0xffffffffffffffff, 0x0, 0x0) ppoll(&(0x7f0000000040)=[{}], 0x1, 0x0, 0x0, 0x0) madvise(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x9) pipe2(&(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}, 0x800) openat$cgroup_ro(r1, &(0x7f0000000080)='memory.events.local\x00', 0x0, 0x0) r2 = openat$dir(0xffffffffffffff9c, 0x0, 0x419e02, 0x0) pwritev(r2, &(0x7f00000006c0)=[{&(0x7f0000000780)="c3", 0x1}], 0x1, 0x0, 0x4) ioctl$LOOP_CHANGE_FD(0xffffffffffffffff, 0x4c06, 0xffffffffffffffff) 18:59:08 executing program 4: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1597.721595][T22567] loop0: detected capacity change from 0 to 1036 [ 1597.750724][T22572] loop3: detected capacity change from 0 to 2752 [ 1597.807487][T22571] loop1: detected capacity change from 0 to 4096 [ 1597.816824][T22577] autofs4:pid:22577:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) [ 1597.862100][T22570] autofs4:pid:22570:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) [ 1597.942021][T22582] loop4: detected capacity change from 0 to 176 [ 1598.010890][T22572] UDF-fs: warning (device loop3): udf_load_logicalvol: Damaged or missing LVID, forcing readonly mount 18:59:08 executing program 1: mkdir(0x0, 0x0) perf_event_open(&(0x7f0000000200)={0x1, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7b}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000080)='./file0\x00', &(0x7f0000000040)='cpuset\x00', 0x0, 0x0) stat(&(0x7f0000000180)='./file0/file0\x00', 0x0) r0 = syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file0\x00', 0x200000, 0x7, &(0x7f0000000200)=[{&(0x7f0000010000)="200000000002000019000000900100000f000000000000000200000006000000000008000080000020000000dbf4655fdbf4655f0100ffff53ef010001000000daf4655f000000000000000001000000000000000b0000000004000008000000d2c200001203", 0x66, 0x400}, {&(0x7f0000010100)="00000000000000000000000082e36724c6f34caa846ed2e527703378010040", 0x1f, 0x4e0}, {&(0x7f0000000080)="03", 0x1, 0x640}, {&(0x7f0000010400)="02000000030000000400000019000f000300040000000000000000000f002e69", 0x20, 0x1000}, {&(0x7f0000012600)="ed41000000100000daf4655fdbf4655fdbf4655f000000000000040080", 0x1d, 0x4400}, {&(0x7f0000012800)="8081000000180000daf4655fdaf4655fdaf4655f00000000000001008000000010000800000000000af301000400000000000000000000000200000030", 0x3d, 0x4800}, {&(0x7f0000013900)="111fc0d901000000803a0900803a09000000000006", 0x15, 0x30000}], 0x0, &(0x7f00000000c0)=ANY=[]) r1 = socket$inet_udp(0x2, 0x2, 0x0) getsockopt$sock_cred(r1, 0x1, 0x11, 0x0, 0x0) fchown(r0, 0xee01, 0x0) lsetxattr$system_posix_acl(&(0x7f0000000100)='./file0\x00', &(0x7f0000000140)='system.posix_acl_default\x00', &(0x7f0000000380)={{}, {}, [{0x2, 0x0, 0xffffffffffffffff}, {0x2, 0x1, 0xee01}], {0x4, 0x1}, [{0x8, 0x5}, {}, {0x8, 0x0, 0xee01}, {0x8, 0x3}, {0x8, 0x4, 0xee01}, {}, {}, {0x8, 0x7}, {0x8, 0x1}], {0x10, 0x2}}, 0x7c, 0x1) rmdir(&(0x7f00000000c0)='./file0/file0\x00') r2 = openat(0xffffffffffffffff, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x0, 0x12, r2, 0x0) openat(r2, &(0x7f00000002c0)='./file0\x00', 0x401, 0x1) [ 1598.113620][T22583] loop_set_status: loop0 () has still dirty pages (nrpages=48) 18:59:08 executing program 2: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) 18:59:08 executing program 4: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') 18:59:09 executing program 3: syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x10, &(0x7f0000000200)=[{&(0x7f0000010000)='\x00BEA01', 0x6, 0x8000}, {&(0x7f0000010100)='\x00NSR02', 0x6, 0x8800}, {&(0x7f0000010300)="0100020044000100925df001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010003000300010000000100000008313233343536373831323334353637384c696e7578554446", 0x61, 0xc000}, {&(0x7f0000010400)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667300000000000000000004050000000000007810e4070913142c16351300002a4c696e757820554446465300000000000000000000000405", 0xde, 0xc0c0}, {&(0x7f0000010500)="0000000000000000010000000000000000000000000000000000000000000000060002002d0001002caee8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc1e0}, {&(0x7f0000010600)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200002000000000000000000000004000000001000000002a4c696e757820554446465300000000000000000000000405", 0x6a, 0xc2c0}, {&(0x7f0000010700)="00000000000000000000000000000000004000008000000002400000002a554446205370617261626c6520506172746974696f6e5001040500000000010000002000020038010000a0000000e00700000000000000000000000000000000000005000200d10001004531f001620000000500000001000000002b4e535230320000000000000000000000000000000000000000000000000000000000000000000002", 0xa2, 0xc3a0}, {&(0x7f0000010800)="0000000000000000000000000000000000000000000000000300000020050000a0020000002a4c696e757820554446465300000000000000000000000405", 0x3e, 0xc4a0}, {&(0x7f0000010900)="070002003b0001009d092800630000000600000004000000002600004d00000000b60000a5000000003e00000101000000340000e507", 0x36, 0xc600}, {&(0x7f0000010a00)="0400020058000100aa52f0016400000004000000002a554446204c5620496e666f00000000000000000000005001040500000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc800}, {&(0x7f0000010b00)="0000000000000000000000000000000000000009084c696e7578206d6b756466667320322e32000000000000000000000000000000000012084c696e757820756466746f6f6c7320322e3200000000000000000000000000000000130868747470733a2f2f6769746875622e636f6d2f70616c692f756466746f6f6c732f0022002a4c696e757820554446465300000000000000000000000405", 0x9a, 0xc8e0}, {&(0x7f0000010c00)="08000200610001000000f00165", 0xd, 0xca00}, {&(0x7f0000011100)="02000200fd0001008f77f00100010000004000006000000000400000c007", 0x1e, 0x20000}, {&(0x7f0000011300)="00010200990001004c38f001200000007810e4070913142c163513000300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x79, 0xa8000}, {&(0x7f0000011400)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000400000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001", 0xda, 0xa80e0}, {&(0x7f0000011500)="050102002c00010059a5e4014000000000000000040000000100000400000000000003000000000000000000a53c00000200000000000000440100000000000000000000000000000010e4070913122c163513000010e4070913122c17015e350010e4070913122c17015e350100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000000000000000000000000000440100000101020016000100279218004000000001000a0000020000400000000000000000000000000000000101020001000100ff912c004000000001000116000200006000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200640001003bc81c0040000000010002060002000041000000000000001100000000000866696c65300101020076000100f2231c0040000000010000060002000047000000000000001400000000000866696c653101010200ca00010044251c0040000000010000060002000048000000000000001500000000000866696c6532010102008b000100fa301c0040000000010000060002000048000000000000001600000000000866696c653301010200ed000100ff892000400000000100000a0002000061000000000000001700000000000866696c652e636f6c64", 0x1f4, 0xac000}], 0x0, &(0x7f0000000040)={[{@uid_forget}, {@gid_ignore}, {@umask}, {@uid}]}) [ 1598.545892][T22611] autofs4:pid:22611:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) [ 1598.548267][T22612] loop1: detected capacity change from 0 to 4096 [ 1598.745992][T22618] loop3: detected capacity change from 0 to 2752 18:59:09 executing program 0: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) [ 1598.800675][T22618] UDF-fs: warning (device loop3): udf_load_logicalvol: Damaged or missing LVID, forcing readonly mount 18:59:09 executing program 2: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) [ 1598.994145][T22629] loop4: detected capacity change from 0 to 176 [ 1599.114134][T22646] loop0: detected capacity change from 0 to 1036 [ 1599.198087][T22646] autofs4:pid:22646:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) [ 1599.233992][T22650] autofs4:pid:22650:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) 18:59:09 executing program 3: syz_mount_image$udf(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x0, 0x10, &(0x7f0000000200)=[{&(0x7f0000010000)='\x00BEA01', 0x6, 0x8000}, {&(0x7f0000010100)='\x00NSR02', 0x6, 0x8800}, {&(0x7f0000010300)="0100020044000100925df001600000000100000000000000084c696e757855444600000000000000000000000000000000000000000000090100010003000300010000000100000008313233343536373831323334353637384c696e7578554446", 0x61, 0xc000}, {&(0x7f0000010400)="0000000000000019004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000004f53544120436f6d7072657373656420556e69636f64650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002a4c696e7578206d6b756466667300000000000000000004050000000000007810e4070913142c16351300002a4c696e757820554446465300000000000000000000000405", 0xde, 0xc0c0}, {&(0x7f0000010500)="0000000000000000010000000000000000000000000000000000000000000000060002002d0001002caee8016100000002000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc1e0}, {&(0x7f0000010600)="000000000000000000000000000000000000000900020000002a4f5354412055444620436f6d706c69616e74000000005001000000000000000200002000000000000000000000004000000001000000002a4c696e757820554446465300000000000000000000000405", 0x6a, 0xc2c0}, {&(0x7f0000010700)="00000000000000000000000000000000004000008000000002400000002a554446205370617261626c6520506172746974696f6e5001040500000000010000002000020038010000a0000000e00700000000000000000000000000000000000005000200d10001004531f001620000000500000001000000002b4e535230320000000000000000000000000000000000000000000000000000000000000000000002", 0xa2, 0xc3a0}, {&(0x7f0000010800)="0000000000000000000000000000000000000000000000000300000020050000a0020000002a4c696e757820554446465300000000000000000000000405", 0x3e, 0xc4a0}, {&(0x7f0000010900)="070002003b0001009d092800630000000600000004000000002600004d00000000b60000a5000000003e00000101000000340000e507", 0x36, 0xc600}, {&(0x7f0000010a00)="0400020058000100aa52f0016400000004000000002a554446204c5620496e666f00000000000000000000005001040500000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x7d, 0xc800}, {&(0x7f0000010b00)="0000000000000000000000000000000000000009084c696e7578206d6b756466667320322e32000000000000000000000000000000000012084c696e757820756466746f6f6c7320322e3200000000000000000000000000000000130868747470733a2f2f6769746875622e636f6d2f70616c692f756466746f6f6c732f0022002a4c696e757820554446465300000000000000000000000405", 0x9a, 0xc8e0}, {&(0x7f0000010c00)="08000200610001000000f00165", 0xd, 0xca00}, {&(0x7f0000011100)="02000200fd0001008f77f00100010000004000006000000000400000c007", 0x1e, 0x20000}, {&(0x7f0000011300)="00010200990001004c38f001200000007810e4070913142c163513000300030001000000010000000000000000000000004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446", 0x79, 0xa8000}, {&(0x7f0000011400)="00000000000000000000000000000009004f53544120436f6d7072657373656420556e69636f646500000000000000000000000000000000000000000000000000000000000000000000000000000000084c696e7578554446000000000000000000000000000000000000000000000908436f707972696768740000000000000000000000000000000000000000000a084162737472616374000000000000000000000000000000000000000000000900020000400000000000000000000000002a4f5354412055444620436f6d706c69616e74000000005001", 0xda, 0xa80e0}, {&(0x7f0000011500)="050102002c00010059a5e4014000000000000000040000000100000400000000000003000000000000000000a53c00000200000000000000440100000000000000000000000000000010e4070913122c163513000010e4070913122c17015e350010e4070913122c17015e350100000000000000000000000000000000000000002a4c696e757820554446465300000000000000000000000405000000000000000000000000000000000000440100000101020016000100279218004000000001000a0000020000400000000000000000000000000000000101020001000100ff912c004000000001000116000200006000000000000000100000000000084e6f6e2d416c6c6f63617461626c6520537061636501010200640001003bc81c0040000000010002060002000041000000000000001100000000000866696c65300101020076000100f2231c0040000000010000060002000047000000000000001400000000000866696c653101010200ca00010044251c0040000000010000060002000048000000000000001500000000000866696c6532010102008b000100fa301c0040000000010000060002000048000000000000001600000000000866696c653301010200ed000100ff892000400000000100000a0002000061000000000000001700000000000866696c652e636f6c64", 0x1f4, 0xac000}], 0x0, &(0x7f0000000040)={[{@uid_forget}, {@gid_ignore}, {@umask}, {@uid}]}) 18:59:09 executing program 1: clone(0x2000000002000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x8420, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) unshare(0x40000000) write$binfmt_elf64(r0, &(0x7f00000007c0)={{0x7f, 0x45, 0x4c, 0x46, 0xa6, 0xf7, 0xca, 0x23, 0x180000000, 0x2, 0x3e, 0xffffff7f, 0x298, 0x40, 0x190, 0x9, 0x2, 0x38, 0x2, 0xfff, 0xce4, 0x1}, [{0x4, 0x9, 0x8, 0x956, 0xfffffffffffffffe, 0x800, 0x3, 0x6}, {0x4, 0x80000001, 0x1000, 0x10001, 0x10000000, 0x1, 0xc2, 0x4}], "089b732a003f5cf99adacc2a24bf446cf076ced42a9a371d742462a8e3703fdcf0c4bc53f8b5ac736e4fe77b89911db9370f8d3db289138cd678713a6e50c75fc4de17f7a7c87e025538ce3f9cca4f7cc07b9cf1116ff7dc814edf69a9a973e483a7a53499191dbfdb85eb856c963f864cdb52933c81dbc9ac9cec0faf25c11ad0c5ac60f976c585abcbe265990200d5a10db60640d787b52e8afb297e484add7668fa", ['\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00']}, 0x953) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0xb635773f06ebbeee, 0x8031, 0xffffffffffffffff, 0x0) readv(0xffffffffffffffff, 0x0, 0x0) ppoll(&(0x7f0000000040)=[{}], 0x1, 0x0, 0x0, 0x0) madvise(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x9) pipe2(&(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}, 0x800) openat$cgroup_ro(r1, &(0x7f0000000080)='memory.events.local\x00', 0x0, 0x0) r2 = openat$dir(0xffffffffffffff9c, 0x0, 0x419e02, 0x0) pwritev(r2, &(0x7f00000006c0)=[{&(0x7f0000000780)="c3", 0x1}], 0x1, 0x0, 0x4) ioctl$LOOP_CHANGE_FD(0xffffffffffffffff, 0x4c06, 0xffffffffffffffff) 18:59:09 executing program 4: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1599.373547][T22646] loop_set_status: loop0 () has still dirty pages (nrpages=48) [ 1599.427877][ T1076] blk_update_request: I/O error, dev loop0, sector 768 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0 [ 1599.440262][ T1076] Buffer I/O error on dev loop0, logical block 96, lost async page write 18:59:10 executing program 2: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1599.569309][T22665] loop3: detected capacity change from 0 to 2752 [ 1599.700030][T22670] loop4: detected capacity change from 0 to 176 [ 1599.842769][T22665] UDF-fs: warning (device loop3): udf_load_logicalvol: Damaged or missing LVID, forcing readonly mount 18:59:10 executing program 5: clone(0x2000000002000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = perf_event_open(&(0x7f0000000100)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c43, 0x8420, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) unshare(0x40000000) write$binfmt_elf64(r0, &(0x7f00000007c0)={{0x7f, 0x45, 0x4c, 0x46, 0xa6, 0xf7, 0xca, 0x23, 0x180000000, 0x2, 0x3e, 0xffffff7f, 0x298, 0x40, 0x190, 0x9, 0x2, 0x38, 0x2, 0xfff, 0xce4, 0x1}, [{0x4, 0x9, 0x8, 0x956, 0xfffffffffffffffe, 0x800, 0x3, 0x6}, {0x4, 0x80000001, 0x1000, 0x10001, 0x10000000, 0x1, 0xc2, 0x4}], "089b732a003f5cf99adacc2a24bf446cf076ced42a9a371d742462a8e3703fdcf0c4bc53f8b5ac736e4fe77b89911db9370f8d3db289138cd678713a6e50c75fc4de17f7a7c87e025538ce3f9cca4f7cc07b9cf1116ff7dc814edf69a9a973e483a7a53499191dbfdb85eb856c963f864cdb52933c81dbc9ac9cec0faf25c11ad0c5ac60f976c585abcbe265990200d5a10db60640d787b52e8afb297e484add7668fa", ['\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00', '\x00']}, 0x953) ioctl$PERF_EVENT_IOC_PERIOD(0xffffffffffffffff, 0x40082404, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0xb635773f06ebbeee, 0x8031, 0xffffffffffffffff, 0x0) readv(0xffffffffffffffff, 0x0, 0x0) ppoll(&(0x7f0000000040)=[{}], 0x1, 0x0, 0x0, 0x0) madvise(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x9) pipe2(&(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}, 0x800) openat$cgroup_ro(r1, &(0x7f0000000080)='memory.events.local\x00', 0x0, 0x0) r2 = openat$dir(0xffffffffffffff9c, 0x0, 0x419e02, 0x0) pwritev(r2, &(0x7f00000006c0)=[{&(0x7f0000000780)="c3", 0x1}], 0x1, 0x0, 0x4) ioctl$LOOP_CHANGE_FD(0xffffffffffffffff, 0x4c06, 0xffffffffffffffff) 18:59:10 executing program 0: r0 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe, 0x0, @perf_bp={0x0}}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, 0x0, 0x1ff) r1 = syz_open_dev$loop(&(0x7f00000001c0), 0x0, 0x103382) openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000180)='./cgroup/syz0\x00', 0x200002, 0x0) r2 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) pwritev(r2, &(0x7f0000000540)=[{&(0x7f0000000580)="3fa095f54410", 0x6}], 0x1, 0x81805, 0x0) ioctl$LOOP_CHANGE_FD(r1, 0x4c00, r2) r3 = openat$autofs(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl(r3, 0x800000000000937e, &(0x7f00000003c0)="0100000000000000180100000508000300000000000000002fe63f596f10f6424dd13f97b3d25ad7e94dce9947a17d6de9766def174c3e3843eba0edb30203f6b0578ffd3193465af44e97a06f3f10cb18a2a028cab95d0312212d6728a0485d69eb6c5607062ca7b6491f5e42d3c12996c401fa742c01c60c1918944aff21d7aab8ba2f40d4c87eb210cf914f3592f2b4c4f09ced6c6f881f3a71d7a442eba630c49c32da4fbde36ff48a92100b5e855c02b16a16b0d62ef4e81cd7bea6ebd436ff14c342a0dd871c426ff7ecf984a98185da22fd3dd338a5b8b23db032a923614ed3da351273b09e8d674379412b712401a87bb50d22c8e0ae49017d7672555105f9ca240fc4fc56453f4de0747c8ed0d11440b813367c") sendfile(0xffffffffffffffff, r3, &(0x7f0000000280)=0x3, 0x400) sendfile(r1, r1, 0x0, 0x24002da8) r4 = signalfd(r0, 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, 0xffffffffffffffff, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) bpf$BPF_PROG_GET_FD_BY_ID(0xd, &(0x7f0000000040), 0x4) signalfd4(0xffffffffffffffff, &(0x7f0000000300)={[0x3ff]}, 0x8, 0x80400) ioctl$LOOP_SET_STATUS(r1, 0x4c02, &(0x7f00000000c0)={0x0, {}, 0x0, {}, 0xfffffffb, 0x0, 0xa, 0x0, "2d0fa80370748074f7f55193975490f09c99f5c83ed3d1e3f6e69190441a90e8f80c186258bce170d57031a6a48cc599a568d9c749dda9e70e496cf49363efc9", "a679a80475766c01912f2cfa6459d270b6f5e819eded3676b1974bb376a4a2ba", [0x5, 0x6]}) ioctl$LOOP_CLR_FD(r1, 0x4c01) bpf$ITER_CREATE(0x21, &(0x7f0000000200)={r4}, 0x8) getsockopt$IP_SET_OP_VERSION(0xffffffffffffffff, 0x1, 0x53, &(0x7f0000000340), &(0x7f0000000380)=0x8) 18:59:10 executing program 4: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') 18:59:10 executing program 2: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1600.309357][T22698] loop0: detected capacity change from 0 to 1036 [ 1600.359062][T22707] loop4: detected capacity change from 0 to 176 [ 1600.381717][T22703] autofs4:pid:22703:validate_dev_ioctl: path string terminator missing for cmd(0x0000937e) 18:59:10 executing program 3: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1600.677305][T22725] loop2: detected capacity change from 0 to 176 [ 1600.685751][T22716] loop_set_status: loop0 () has still dirty pages (nrpages=16) [ 1600.764892][T22698] general protection fault, probably for non-canonical address 0xdffffc0000000027: 0000 [#1] PREEMPT SMP KASAN [ 1600.776638][T22698] KASAN: null-ptr-deref in range [0x0000000000000138-0x000000000000013f] [ 1600.785051][T22698] CPU: 1 PID: 22698 Comm: syz-executor.0 Not tainted 5.15.0-rc5-next-20211018-syzkaller #0 [ 1600.795036][T22698] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 1600.805091][T22698] RIP: 0010:hctx_lock+0x29/0x1d0 [ 1600.810214][T22698] Code: 00 41 55 41 54 49 89 f4 55 53 48 89 fb e8 8f 2e b3 fd 48 8d bb 38 01 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 8a 01 00 00 48 8b ab 38 01 00 00 31 ff 83 e5 20 [ 1600.830001][T22698] RSP: 0018:ffffc9000a8b70c8 EFLAGS: 00010206 [ 1600.836073][T22698] RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffc9000d26e000 [ 1600.844048][T22698] RDX: 0000000000000027 RSI: ffffffff83c44681 RDI: 0000000000000138 [ 1600.852021][T22698] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 1600.859994][T22698] R10: 0000000000000001 R11: 0000000000000000 R12: ffffc9000a8b7110 [ 1600.867973][T22698] R13: 0000000000000001 R14: 0000000000000148 R15: ffffc9000a8b7570 [ 1600.875947][T22698] FS: 00007fa9b0d3b700(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 [ 1600.884970][T22698] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1600.891565][T22698] CR2: 0000001b2ee2f000 CR3: 000000007a966000 CR4: 00000000003506e0 [ 1600.899547][T22698] Call Trace: [ 1600.902823][T22698] [ 1600.905752][T22698] blk_mq_run_hw_queue+0x79/0x2f0 [ 1600.910794][T22698] ? blk_mq_delay_run_hw_queues+0x4a0/0x4a0 [ 1600.916700][T22698] ? __blk_mq_end_request+0x384/0x5a0 [ 1600.922089][T22698] blk_mq_submit_bio+0x14f1/0x1aa0 [ 1600.927211][T22698] ? blk_mq_try_issue_list_directly+0x520/0x520 [ 1600.933469][T22698] ? lockdep_hardirqs_on+0x79/0x100 [ 1600.938768][T22698] ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 1600.944958][T22698] ? submit_bio_noacct+0x9de/0xe80 [ 1600.950083][T22698] submit_bio_noacct+0x9e6/0xe80 [ 1600.955031][T22698] ? iocb_bio_iopoll+0x1f0/0x1f0 [ 1600.959974][T22698] ? lockdep_hardirqs_on_prepare+0x400/0x400 [ 1600.966018][T22698] submit_bio+0x1ea/0x430 [ 1600.970441][T22698] ? submit_bio_noacct+0xe80/0xe80 [ 1600.975648][T22698] ? lockdep_init_map_type+0x2c3/0x7b0 [ 1600.981120][T22698] submit_bio_wait+0x106/0x230 [ 1600.985890][T22698] ? submit_bio_wait_endio+0x40/0x40 [ 1600.991191][T22698] blkdev_issue_flush+0xd6/0x130 [ 1600.996231][T22698] ? blk_unregister_queue+0x280/0x280 [ 1601.001616][T22698] ? bio_devname+0x40/0x40 [ 1601.006038][T22698] ? current_time+0x2c0/0x2c0 [ 1601.010782][T22698] ? blkdev_fallocate+0x440/0x440 [ 1601.015811][T22698] ? blkdev_fallocate+0x440/0x440 [ 1601.020835][T22698] blkdev_fsync+0x68/0xa0 [ 1601.025177][T22698] vfs_fsync_range+0x13a/0x220 [ 1601.030030][T22698] blkdev_write_iter+0x3d8/0x540 [ 1601.034975][T22698] ? blkdev_open+0x2e0/0x2e0 [ 1601.039572][T22698] ? iter_file_splice_write+0x168/0xc70 [ 1601.045126][T22698] ? direct_splice_actor+0x110/0x180 [ 1601.050420][T22698] ? splice_direct_to_actor+0x34b/0x8c0 [ 1601.055975][T22698] ? do_splice_direct+0x1b3/0x280 [ 1601.061006][T22698] ? do_sendfile+0xaf2/0x1250 [ 1601.065758][T22698] ? __x64_sys_sendfile64+0x1cc/0x210 [ 1601.071141][T22698] ? do_syscall_64+0x35/0xb0 [ 1601.075798][T22698] do_iter_readv_writev+0x472/0x750 [ 1601.081019][T22698] ? new_sync_write+0x660/0x660 [ 1601.085879][T22698] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1601.092126][T22698] ? security_file_permission+0xab/0xd0 [ 1601.097826][T22698] do_iter_write+0x188/0x710 [ 1601.102424][T22698] ? page_cache_pipe_buf_confirm+0x8e/0x310 [ 1601.108502][T22698] ? kasan_check_range+0xd2/0x180 [ 1601.113588][T22698] vfs_iter_write+0x70/0xa0 [ 1601.118086][T22698] iter_file_splice_write+0x723/0xc70 [ 1601.123456][T22698] ? generic_file_splice_read+0x488/0x6d0 [ 1601.129172][T22698] ? generic_splice_sendpage+0x140/0x140 [ 1601.134809][T22698] ? folio_flags.constprop.0+0x70/0x70 [ 1601.140269][T22698] ? security_file_permission+0xab/0xd0 [ 1601.145898][T22698] ? generic_splice_sendpage+0x140/0x140 [ 1601.151542][T22698] direct_splice_actor+0x110/0x180 [ 1601.156652][T22698] splice_direct_to_actor+0x34b/0x8c0 [ 1601.162021][T22698] ? generic_file_splice_read+0x6d0/0x6d0 [ 1601.167741][T22698] ? do_splice_to+0x250/0x250 [ 1601.172413][T22698] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1601.178658][T22698] ? security_file_permission+0xab/0xd0 [ 1601.184234][T22698] do_splice_direct+0x1b3/0x280 [ 1601.189079][T22698] ? splice_direct_to_actor+0x8c0/0x8c0 [ 1601.194631][T22698] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1601.200874][T22698] ? security_file_permission+0xab/0xd0 [ 1601.206416][T22698] do_sendfile+0xaf2/0x1250 [ 1601.210915][T22698] ? do_pwritev+0x270/0x270 [ 1601.215411][T22698] ? __context_tracking_exit+0xb8/0xe0 [ 1601.220895][T22698] ? lock_downgrade+0x6e0/0x6e0 [ 1601.225779][T22698] __x64_sys_sendfile64+0x1cc/0x210 [ 1601.230976][T22698] ? __ia32_sys_sendfile+0x220/0x220 [ 1601.236266][T22698] ? syscall_enter_from_user_mode+0x21/0x70 [ 1601.242157][T22698] do_syscall_64+0x35/0xb0 [ 1601.246569][T22698] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 1601.252454][T22698] RIP: 0033:0x7fa9b37c5a39 [ 1601.256860][T22698] Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 [ 1601.276543][T22698] RSP: 002b:00007fa9b0d3b188 EFLAGS: 00000246 ORIG_RAX: 0000000000000028 [ 1601.285121][T22698] RAX: ffffffffffffffda RBX: 00007fa9b38c8f60 RCX: 00007fa9b37c5a39 [ 1601.293079][T22698] RDX: 0000000000000000 RSI: 0000000000000004 RDI: 0000000000000004 [ 1601.301051][T22698] RBP: 00007fa9b381fc5f R08: 0000000000000000 R09: 0000000000000000 [ 1601.309006][T22698] R10: 0000000024002da8 R11: 0000000000000246 R12: 0000000000000000 [ 1601.317051][T22698] R13: 00007ffc7782442f R14: 00007fa9b0d3b300 R15: 0000000000022000 [ 1601.325020][T22698] [ 1601.328022][T22698] Modules linked in: [ 1601.341559][T22698] ---[ end trace 073f432a126a3364 ]--- [ 1601.347298][T22698] RIP: 0010:hctx_lock+0x29/0x1d0 18:59:11 executing program 4: ioctl$BTRFS_IOC_START_SYNC(0xffffffffffffffff, 0x80089418, &(0x7f0000000040)=0x0) ioctl$BTRFS_IOC_SET_RECEIVED_SUBVOL(0xffffffffffffffff, 0xc0c89425, &(0x7f0000000480)={"966babf8fa931306d3c37a969f132746", 0x0, r0, {0x8}, {0x7f, 0x4}, 0x2, [0x5, 0x205, 0x10000000, 0x7, 0x1f, 0x2, 0x8, 0xffff, 0x0, 0xfffffffffffffffb, 0x100000000001, 0xfffffffffffffffe, 0xffff, 0x18000, 0x0, 0xffff]}) ioctl$BTRFS_IOC_SNAP_DESTROY_V2(0xffffffffffffffff, 0x5000943f, &(0x7f00000017c0)={{}, r0, 0x0, @unused=[0x3, 0x9, 0x5, 0x7fff], @subvolid=0x10000}) mkdirat(0xffffffffffffff9c, &(0x7f0000000240)='./file0\x00', 0x0) perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}, 0x0, 0x0, 0x4000000}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mount(0x0, &(0x7f0000000100)='./file0\x00', &(0x7f0000000040)='cgroup2\x00', 0x0, 0x0) chdir(&(0x7f00000001c0)='./file0\x00') r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0, 0x0}, &(0x7f0000000280)=0x5) setreuid(0x0, r2) recvmmsg$unix(0xffffffffffffffff, 0x0, 0x0, 0x10000, 0x0) mkdir(&(0x7f0000000300)='./file0\x00', 0x0) r4 = socket(0x4, 0x3, 0x1) getpeername$packet(0xffffffffffffffff, &(0x7f0000000080)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000001c0)=0x14) sendmsg$nl_route_sched(r4, &(0x7f00000002c0)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x200000}, 0xc, &(0x7f0000000280)={&(0x7f0000002900)=ANY=[@ANYBLOB="52501c14080fb987df439ed0a9a9836fb712b668f2081429a65b00d5ddb5cc99cc0305634b90b0d6fa3811c98afe0c16ad1db173170131b88043ca082d2b5036d0f3ec2c9d6a367cdd65f715d24252bbf3b771782e6809ee4c70f0da6efe6120588c63635450453444dff136d77431a99d8347655a86a7215ef8e70873858a35c7925e07ab5edb5459b7a0", @ANYRES32=r5, @ANYBLOB="e0ff01000000090002000f00300008801c0001000506018000020000030000000800000001010000050000000e00020004000180010002000600000008000d00080000000b0001006d756c74697100000800020007000800"], 0x70}, 0x1, 0x0, 0x0, 0xc040}, 0x4000) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000028c0)={&(0x7f00000002c0)={0x10, 0x0, 0x0, 0x10}, 0xc, &(0x7f0000002880)={&(0x7f00000027c0)=@ipv6_getnetconf={0x54, 0x52, 0x200, 0x70bd2d, 0x25dfdbff, {}, [@IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x8}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x1}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x9}, @NETCONFA_PROXY_NEIGH={0x8}, @IGNORE_ROUTES_WITH_LINKDOWN={0x8, 0x6, 0x5}, @NETCONFA_PROXY_NEIGH={0x8, 0x5, 0x4}, @NETCONFA_IFINDEX={0x8}]}, 0x54}, 0x1, 0x0, 0x0, 0x8010}, 0x20006004) syz_mount_image$udf(&(0x7f0000000140), &(0x7f0000000200)='./file0\x00', 0x1, 0x5, &(0x7f0000001680)=[{&(0x7f0000000340)="5eb1dca91d1ea0d1b247ef1c882cdbe2e9a0e03a5588d0149ae3ee1ef93d4be5140341a7b798767aba87bd1b2b1f732d851e8ff396321101e80c233590d9e03ab306892960acbef154018f2e846a58ae7210031d9bbbd23dea75b30027d8c96a6f40126f24a3802243db487ed697a09237c41572c4c3da9564ff4d558ad495460a6218db31e77d059927fb85", 0x8c, 0x4}, {&(0x7f0000000440)="1da912a2415fdb3032984718928f7116db81ea026580ad567554986778e07906255e1cbd5126a32bc118e670cd09761e147205bf6b211340d9997ee78457cbfaae6b8a922793e719d8d7ab6f4bf2408f1b1b52c52034ac518536e40547aa8f71c175e8b22b6d1c0971b7a50fcbc1a38620ddd348f950d1a45b970da05c", 0x7d, 0x2}, {&(0x7f00000004c0)="e64da80fa23b7b648c78e24a3fd050526ff7265c84cc4c8c85528b8ea9a2316602c2aa60c96d9babfa44e4f95306e5f8af34d3a94b9c092b78b14a9b55986bfaf5e7387956d25a891e84a50d29e47d60a73f43b1af32ad2db0abd478171beac54d5887983aa3cc03a90fc613fc175a56bb6612c3e238fec875dfd6754375e985bbcb2a17c560dc2687c33a750fe080e098316b77d36204a75d19b2e6b53de7f45fe2bda2d91c82954fbd437789c63ff4dc7799438c9b50f3df52147edd943007d7", 0xc1, 0x7}, {&(0x7f00000005c0)="60518dfade036ae79be9cdd35122adbed5eaeb69e41c237dd84f6f93492935a234a6482be535631bc5c3ccd37f619636c88e33c8893fe6192cb64e9cbda72637c3278024370adc2862b700f0febfc4a73f6f61822a7a25d82383910a4ba2c689d76b668fcf5059c9dd7d7d321de599ba1f28c90288469c170ab01cdfcd802de20cb36551247ef917b8e73c39098556c4e2cdf6b51046803932e52ab964af5985f71a1b158a87408e46709b62e1b87963a3", 0xb1, 0x6}, {&(0x7f0000000680)="3051cb121138c3d35dbcea398d1fa7d102c06451134b77899f2a1a36c03379f1d9b00b7fa39d77d31c678a7096599a3eb9a4d1d5cb541e60ca3114838a04f4e752a7e6b1c0e30a30a470209b12ef350f9e81df415092f7f3a9eecfaaa3f1a6ab47771aff6c983b404d4701c6ebcf1e88fd86a5e4e7e290ad83adac6d8a02f2b44169ef8deb65d164403ead473a8ffe523b40f727363c8faa8f8f212e8fc19d03bb49d1d9c7aa2f0f9a80ff7c9e7c40450dcfd416402fa70d3466dd2804b8028536fa86eeeac3f4647bc3afeae05c8f9567db557776da218a047e0ec6102e40df6561f6df7585eae23cc51736856098f0305941ae85b13cdfd782a9c5b7bced4251f1d064d07c6474a7883599910e678a5203fb17af1b633c85a85840d2f8199db93b3abb236dd4950d4438431b3e9320301c62bab150cb287ff1dfa28b801fe897403c0c789757c86f9045109be55ab04e656ac9eabfab80107be66311fc74f0dbc899a4a12cb87fb6e463de8b23d13edcb3efed617040995a002db704d2c37e6bbb287f006a77e06bc6253634c9f6cf2bdbac7b293c59b1b754bd8bdb6b96d6d8dc77b9fd23edf0fc1c890032f9a938ed881d23fc756805fa85eae398c1f918947c631e3f76d1dcb47c92c25d68d3c84903cd055081f9bcf3ae8b3829c676bb4cb678121f9c11e5b185a345d1ec57a2976651f59f392c29529d4741b0ab39bb73c1638d504b3b144a3e1178161185cabfce23ee496936849c718bbee02e26713b6fe3c898dcfe70efeaf97cbfcb10d284f57544407a31b76204fa49899b77c5065ad5c76a0ad6c3439a066a29cc0f665832a31dc5f1fbfb04b61c6d7e77048b011a777c01ad93093dfab47382b8ce77b13f1aacef18b557aad01a24110415abefe832928bd9435d00e470c3119f117c223c90f4d41fcb4111804ab03a28b14976128c6d5f346dfd22d7f0d07a107b3457b81dc74bf51697decbc72df2d9a5f0b0078789bc37b6b64cfb4cd6b2b74af79f3a614a00d024558960ea1cc4501d15323890b96a21e539fba0f6c6c72819b1fb44ddae4eaf47a175d2b332076eef12ec694019a0ce49c7aa5119e6bef0f0468b48d8a4bcf8596f7a276616301996bcc445bc0db23eceb1474c5c6b1a6fc48e4d90e759a3b96602effeb009abffab76347ad4eaca2a5c6e7c793a7faa228ba71e48095b78a6eaae45ec60bd26160e6057299774992a66a3833950ae7ce501578efd31279865e918b2953a866c9c5587b3ecfa3e19c4aec39ce2143662a42546c752a3e3e35701c24ee087fc443087a8bd5e49098c2be73ad25691e59594d8ffafe1dc772d0bb47d79083b01cdee0156fdf05cbff40474cd7b42a95250c41781a39ff4e9f9fcd110b67ab251a87635b5b3c8ba61b578b18f1baf961ee6bb2049f0dfb4baf5c4d39c8eb92cd1325efef28d73fddad23c9f43bdfed3e52cb0a7dc9b098c3c8f08d4434c9534b2a7b80985c3ef67181a8ed40deb0deac47f04e2dfbf924b0c8eacfac160d3858632912b1144c5a307f6b59e1788924381f602a242dc85707323f654af0bc4bbea2be3deff6982d559a6b3ba34ec576476ceace1ce2e7b18e1ddd0ae03150ef731dca2573dc672c6c90396d5d903ac12fa527d6fda7c28313ab84a7c10c8962c9ed1d96a2ba09d190deeb91a445d554ab0c85397e0db617c0efb8826ebf1efc4105c9a20da19275edd24c014f1782e7cbdba9b65b296189c4cd8aa5c1e9e9666bb56666f076ad53280c23d59d1f5273ec3f0baf358f243bc8e8180bac210665fd1479705975c7d4d13ee62c2f6747e89a6e2ad9355aaab3b49cfe9d37d0e842bc5bfd1a057e42292497445bf203e986be769f1b0a8c0253a68e83ee35e6ed62aae159c191417504bb62e74e6f662579a4dae4b4227552174f2b63d5613ea3bc44af0e5158eac1d9f10426cbdfe0025aa79db1c2a6a48412692520023355c526e95906568a614eb89cb1fac82f64f727a12a0a030a4ceadcc69836a98c5d7b3b6bdf9fdf3a3545113fb6515b9f88a0315d6c05d818973aaf992b4d8676031be1271c7d7b3ef0972d61638612caa25419d40f65ef1aed74b4ef6430ed9c787b3b5e85a1022189f9056b511866df801b2ccc8607cac37590db816d7c400a8b27c2382f47763b0b73b4d49b969bb8c19a14bf5652097b47938f47a1fa2e03bfeaf805794e4039145066a2f4d43b64fc0b8d77c8ad65343f7d90c8b454556769af1ea145d9fa763707a87efe09aceff0d04f5106a35e60af4cb0a417a021175af8e28ccabad3dd09b52fb472e56811412be21f1fa97c2b09738592f1916b00a9335d75232e4a1ee59af594021270d0e434617ee99724428385ff818781a6de2cad4f8aca3ccb2746a71b5c21f218220571b35acc09b3fd029c5c536f2b9c4c4bd45ed41ba9f5dea0c49039f456f0c54b79535e11da8a6e26a2254b3e6e76441b91d7279e34d9bb7219d14528c18e8dc7399ad0765c9ea9f41d0cb0e008d96368e2e509ea2cba74dd4721ba7cff1095efdfc2cecd68c573e12334a48d1e054ac7bdeb1a88f85fab0dbd716193b349458697b6d3af2fa9799a9e15342d9a96254e626732ee2f9debd192959cfc99f174b9dd9b5dace51f799a72d08086f9a5dde656dd53ca770cd428741dff9a43cf885f339350b793f02e77bd69ccb3002d490993e84e0c29aefa6d32a81ce74d837efa3ff1d4143e28c62139318427f05867be56df52c8bb3875c798315268c5e10d0396421a7f8e6f30796df646c0076356d5c1c652692d62aecedc8d508a3b0b8c4ea67bfc85de509a62c32db56a068a568a7262bc546864ebacdf3ee736068deb4b4332f131a14f26965ed0797bc25ddc0902957a604596d3ff054cc3124b9862039a40411fc23541bf7cd05d07f37513a1c106ef4c3897b61b1e84982a9fd8b7aed191fa7068034d2fb29ce592815fb1c0b1e64c74a1513362aff9764c847a16407b3efd3aa8f3037cbd23f3193c947c9c8c15baa523202aed5f476c2712a277680b1623b5c3e24467a7cbcfe9c8477f7357390caef7dd048eee506ea0fe651944871bb0eb715dee67fe0b6c714ca4fd2e08d137ae0ea45fddc9a83f8dc4e049480da7d606171bd7b2784c590299ed4bf5f6230cd5436b68e5a922693c2818a482c7e0d60bd5486c12447f7ee1e54ba4bfac2b9f1adffd463568573fc7ead77e9afbe15c5378bae871ac60b668dce4aa888ace0d3e0cc885cdb1baf26b93f4635dbc6d5174244299604b58bbeeae87e436626e5bfb05a0e6164fb6d4a3f8c8c09d051f18b9d696ce584059c2f6a0e3f4497609202f5a2385570107c5a7211f16eb5b826ca9134b45507f60e97f15f7d2f925851919e51dc05aae6790f229d2745c6f5ae3136aa7014e21f3c48a2c6d7a3543259f2c157ef001d9096f73230dde173a2ae83c48617792a4127e094713b37babc9f9e0795d3f710d9af7f662b16edab9667e2ccd784ec2ae4a3f393392d6a01561625d02fb345bc077d69cc2224c8f8946eaa0c571e3165f65d569696112487b05ecffaacfb5aeca6156cc756435d4b1703fdd33961e7f76ec8f30104295d56a4eaa078bee7280a30ec98c59e9e840caa53d8b9d3d31f3c4087b09defada35141ec67ed6c30175ed9be2f6ea2ad68ab25ef42a5ba013a933f510db3e5f53330fb173812eb243ad87279fc9848c2f477c774ad16e70b9d4377a739804fd182970c5f2a23fe74a5a9d32732517780b6d397694eb5f36dd3d3afb6f94774d7445535e971bbb10b22fd2ca2e6462d40c5bc73da6072f629eb2aece9be0d2d4ce800d769f898d8bd4179c1a6f02835d542eba990492d38cd9eca500a4348aef5deaf0640ba14ce8659e0a0a6141ebab0ad1b64917363f5752dc1790619ee4319593b885e5e27dca00c166ce16c3de82a5a9543bf16e5d9937b3aa26e2937162824eb5e92e3e819363d827a67a4410698a937d4044c11363a0facd0c01637995dfee73d77a70e6f622eb162d349322838d9215fa1aabc742e555e56c8dc8329eea72a65179c41791d58c0073ccfbb2bcea4f145c14fc4c1733f00e4d807cae2f14ba0579a547a9f44e7b8f29e6178c685ad486d24a26f4d94785b3591121bcfbbe6ddb9561aa9c454d1cf41faf685d37ea89647c186db289790289a5c0df58671d8254f76cf02aa4c9afba6465bd0ff9c02a126a1fb2d4c2ec4388859974fa565679b3c3b2f9b0a3d778443602de070f3bcd35d38766485e269791de949dbf55d05df755652ca53f593be5771394acb258cfcea0b23e53e56ca4e3e4c75de7920e51634e1c6abb8d1a355e921d5554e04d3ba53405ebb6c066122256dfade6e709aff4ef9d47bc47bf7162a398d385b61559256e783ff2ca1c8240fb96adf444cbf8a7f2f9c57b8ce1afc74c38f32c68639be2e62ebd6a36114c688fa3ed4e4892549dce53a0eabe97d6fed7d9ea56967fef5f43054284ebf80273fa33c502669d7ef35d4110fa064f352196400b4c838660ccdfbfbd4abfee810204faedc7b07aea4ad80d37200626f02a197f456b87ae99f9afd8db60e488f11a3dfc6aba281330e0151c4faa2f2d79760bbaa0fcf5c39fe048bf12208de11273b3da8a1b8b449f2bdcff42870a7e0961c042f771bba1a78b9d5c949f43f207fa8167e6797b4256465e2a4fca280d08cf42f74abb3bc0b8ea77e0fff79569bf35f2c69834b2cb3dafb0d552c42c6e601c83a8bb48f1b8cfe91c15dc9f0f23d701d4327d152b59ddef0b40f609f39b834057bf652099ee20249951476ea3408bc6a9efaa65bea719850114a040de0e48f2d2d3b456c8ec0f94d28f67048ba964e3003b43702674f3b6d9c3ec48b7c70e2fb89d56488ff8a3690df91863df5c34a1af6e729a36f63cb236a3d75f203bef04df00adaaa20f8f465fc4494e53f6254dba862d747031a403aee772cfaf50182b005588d314fcaa032a3c0128e1a4d0d2973d67acab53af2551f35b577daad522231c27c1f604a90b343aa1cbf00cf7af229f9b5e9f4e069ef89d773958e3ac7c504e67d0399564b056110f12a67b958e68c7e1a101b5748cad61a193df0dbdf548c0dd977080010137171da0fab4004eb1215801294fb0155e48cb0bf84b095e1568ef3f6dfb187ea14994eb66a88f6817b5a7072eeb516e41041cd478e89f2de3ff448aa2ea5c4d9aeccb70a6e020afc280baab5068d0ff222a4bbec3fd1c087bd3b109958faa523f09b6b6553a17f9c656819b048890a652c36495558f2380daa28aeb0dc2d912e0e41e0d607c946ea8bc4ef63d069d5d99f0aef7e63af50d1794dcb3f45f90e708f17c5ec7b1d4125ec557ef7083eff7544b26177826c66712a279fb231c207ee51f4e0b360ebcda1d00d3e83ce04f71086b6aa7f2f037011e67fb12fd2947a667c40e6bc24a0dea78caf88fe37a8579dca5bb2e302fe1a14919b4e774a1a5cd3bbf923f74e18161cfc2ec58ec0fabddf079ae282ef415c081a89313b2c0db5d61e2d80efe00358ac60bd25a71b43176a8e103ccf86f67c25f5260e2c7d7d5c95f30fba24e382e81f48c340755d09a0d22eda0e7df170cb4488dc9ac542051ed04fec95ad2ab0ee03af8e8dc53637eb5933503ba51e87a7fb93b772b8924bd2a07aa3217d5e155cd70850849922747ea378134ec1bb96f77326d0317d24c9b6fdd01053aa14b1e05385b150338e8166abaf54a2425c5e19cafa51de7e823ecfdf06caf0573acd875c5954ca0e16fde5722cc6e6e37250", 0x1000, 0xb086}], 0x1418, &(0x7f0000002a00)={[{@umask}, {@gid_forget}, {@unhide}, {@gid={'gid', 0x3d, r3}}], [{@dont_measure}, {@smackfsfloor={'smackfsfloor', 0x3d, '+p}@@\xad{!!#\\:\\/$\xfd'}}, {@permit_directio}, {@uid_gt={'uid>', r2}}, {@fsname={'fsname', 0x3d, 'cgroup2\x00'}}]}) open(&(0x7f0000000000)='./file0\x00', 0x4001, 0x44) rmdir(&(0x7f0000000180)='./file0\x00') [ 1601.352459][T22698] Code: 00 41 55 41 54 49 89 f4 55 53 48 89 fb e8 8f 2e b3 fd 48 8d bb 38 01 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 8a 01 00 00 48 8b ab 38 01 00 00 31 ff 83 e5 20 [ 1601.372446][T22698] RSP: 0018:ffffc9000a8b70c8 EFLAGS: 00010206 [ 1601.378726][T22698] RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffc9000d26e000 [ 1601.387219][T22698] RDX: 0000000000000027 RSI: ffffffff83c44681 RDI: 0000000000000138 [ 1601.395319][T22698] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 1601.403509][T22698] R10: 0000000000000001 R11: 0000000000000000 R12: ffffc9000a8b7110 [ 1601.411839][T22698] R13: 0000000000000001 R14: 0000000000000148 R15: ffffc9000a8b7570 [ 1601.420295][T22698] FS: 00007fa9b0d3b700(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 [ 1601.429595][T22698] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1601.436439][T22698] CR2: 0000001b2ee2f000 CR3: 000000007a966000 CR4: 00000000003506e0 [ 1601.439705][T22753] loop3: detected capacity change from 0 to 176 [ 1601.444742][T22698] Kernel panic - not syncing: Fatal exception [ 1601.445004][T22698] Kernel Offset: disabled [ 1601.461824][T22698] Rebooting in 86400 seconds..