f8b9f8baf8bbf8bcf8bdf8bef8bff8c0f8c1f8c2f8c3f8c4f8c5f8c6f8c7f8c8f8c9f8caf8cbf8ccf8cdf8cef8cff8d0f8d1f8d2f8d3f8d4f8d5f8d6f8d7f8d8f8d9f8daf8dbf8dcf8ddf8def8dff8e0f8e1f8e2f8e3f8e4f8e5f8e6f8e7f8e8f8e9f8eaf8ebf8ecf8edf8eef8eff8f0f8f1f8f2f8f3f8f4f8f5f8f6f8f7f8f8f8f9f8faf8fbf8fcf8fdf8fef8fff800f901f902f903f904f905f906f907f908f909f90af90bf90cf90df90ef90ff910f911f912f913f914f915f916f917f918f919f91af91bf91cf91df91ef91ff920f921f922f923f924f925f926f927f928f929f92af92bf92cf92df92ef92ff930f931f932f933f934f935f936f937f938f939f93af93bf93cf93df93ef93ff940f941f942f943f944f945f946f947f948f949f94af94bf94cf94df94ef94ff950f951f952f953f954f955f956f957f958f959f95af95bf95cf95df95ef95ff960f961f962f963f964f965f966f967f968f969f96af96bf96cf96df96ef96ff970f971f972f973f974f975f976f977f978f979f97af97bf97cf97df97ef97ff980f981f982f983f984f985f986f987f988f989f98af98bf98cf98df98ef98ff990f991f992f993f994f995f996f997f998f999f99af99bf99cf99df99ef99ff9a0f9a1f9a2f9a3f9a4f9a5f9a6f9a7f9a8f9a9f9aaf9abf9acf9adf9aef9aff9b0f9b1f9b2f9b3f9b4f9b5f9b6f9b7f9b8f9b9f9baf9bbf9bcf9bdf9bef9bff9c0f9c1f9c2f9c3f9c4f9c5f9c6f9c7f9c8f9c9f9caf9cbf9ccf9cdf9cef9cff9d0f9d1f9d2f9d3f9d4f9d5f9d6f9d7f9d8f9d9f9daf9dbf9dcf9ddf9def9dff9e0f9e1f9e2f9e3f9e4f9e5f9e6f9e7f9e8f9e9f9eaf9ebf9ecf9edf9eef9eff9f0f9f1f9f2f9f3f9f4f9f5f9f6f9f7f9f8f9f9f9faf9fbf9fcf9fdf9fef9fff900fa01fa02fa03fa04fa05fa06fa07fa08fa09fa0afa0bfa0cfa0dfa0efa0ffa10fa11fa12fa13fa14fa15fa16fa17fa18fa19fa1afa1bfa1cfa1dfa1efa1ffa20fa21fa22fa23fa24fa25fa26fa27fa28fa29fa2afa2bfa2cfa2dfa2efa2ffa30fa31fa32fa33fa34fa35fa36fa37fa38fa39fa3afa3bfa3cfa3dfa3efa3ffa40fa41fa42fa43fa44fa45fa46fa47fa48fa49fa4afa4bfa4cfa4dfa4efa4ffa50fa51fa52fa53fa54fa55fa56fa57fa58fa59fa5afa5bfa5cfa5dfa5efa5ffa60fa61fa62fa63fa64fa65fa66fa67fa68fa69fa6afa6bfa6cfa6dfa6efa6ffa70fa71fa72fa73fa74fa75fa76fa77fa78fa79fa7afa7bfa7cfa7dfa7efa7ffa80fa81fa82fa83fa84fa85fa86fa87fa88fa89fa8afa8bfa8cfa8dfa8efa8ffa90fa91fa92fa93fa94fa95fa96fa97fa98fa99fa9afa9bfa9cfa9dfa9efa9ffaa0faa1faa2faa3faa4faa5faa6faa7faa8faa9faaafaabfaacfaadfaaefaaffab0fab1fab2fab3fab4fab5fab6fab7fab8fab9fabafabbfabcfabdfabefabffac0fac1fac2fac3fac4fac5fac6fac7fac8fac9facafacbfaccfacdfacefacffad0fad1fad2fad3fad4fad5fad6fad7fad8fad9fadafadbfadcfaddfadefadffae0fae1fae2fae3fae4fae5fae6fae7fae8fae9faeafaebfaecfaedfaeefaeffaf0faf1faf2faf3faf4faf5faf6faf7faf8faf9fafafafbfafcfafdfafefafffa00fb01fb02fb03fb04fb05fb06fb07fb08fb09fb0afb0bfb0cfb0dfb0efb0ffb10fb11fb12fb13fb14fb15fb16fb17fb18fb19fb1afb1bfb1cfb1dfb1efb1ffb20fb21fb22fb23fb24fb25fb26fb27fb28fb29fb2afb2bfb2cfb2dfb2efb2ffb30fb31fb32fb33fb34fb35fb36fb37fb38fb39fb3afb3bfb3cfb3dfb3efb3ffb40fb41fb42fb43fb44fb45fb46fb47fb48fb49fb4afb4bfb4cfb4dfb4efb4ffb50fb51fb52fb53fb54fb55fb56fb57fb58fb59fb5afb5bfb5cfb5dfb5efb5ffb60fb61fb62fb63fb64fb65fb66fb67fb68fb69fb6afb6bfb6cfb6dfb6efb6ffb70fb71fb72fb73fb74fb75fb76fb77fb78fb79fb7afb7bfb7cfb7dfb7efb7ffb80fb81fb82fb83fb84fb85fb86fb87fb88fb89fb8afb8bfb8cfb8dfb8efb8ffb90fb91fb92fb93fb94fb95fb96fb97fb98fb99fb9afb9bfb9cfb9dfb9efb9ffba0fba1fba2fba3fba4fba5fba6fba7fba8fba9fbaafbabfbacfbadfbaefbaffbb0fbb1fbb2fbb3fbb4fbb5fbb6fbb7fbb8fbb9fbbafbbbfbbcfbbdfbbefbbffbc0fbc1fbc2fbc3fbc4fbc5fbc6fbc7fbc8fbc9fbcafbcbfbccfbcdfbcefbcffbd0fbd1fbd2fbd3fbd4fbd5fbd6fbd7fbd8fbd9fbdafbdbfbdcfbddfbdefbdffbe0fbe1fbe2fbe3fbe4fbe5fbe6fbe7fbe8fbe9fbeafbebfbecfbedfbeefbeffbf0fbf1fbf2fbf3fbf4fbf5fbf6fbf7fbf8fbf9fbfafbfbfbfcfbfdfbfefbfffb00fc01fc02fc03fc04fc05fc06fc07fc08fc09fc0afc0bfc0cfc0dfc0efc0ffc10fc11fc12fc13fc14fc15fc16fc17fc18fc19fc1afc1bfc1cfc1dfc1efc1ffc20fc21fc22fc23fc24fc25fc26fc27fc28fc29fc2afc2bfc2cfc2dfc2efc2ffc30fc31fc32fc33fc34fc35fc36fc37fc38fc39fc3afc3bfc3cfc3dfc3efc3ffc40fc41fc42fc43fc44fc45fc46fc47fc48fc49fc4afc4bfc4cfc4dfc4efc4ffc50fc51fc52fc53fc54fc55fc56fc57fc58fc59fc5afc5bfc5cfc5dfc5efc5ffc60fc61fc62fc63fc64fc65fc66fc67fc68fc69fc6afc6bfc6cfc6dfc6efc6ffc70fc71fc72fc73fc74fc75fc76fc77fc78fc79fc7afc7bfc7cfc7dfc7efc7ffc80fc81fc82fc83fc84fc85fc86fc87fc88fc89fc8afc8bfc8cfc8dfc8efc8ffc90fc91fc92fc93fc94fc95fc96fc97fc98fc99fc9afc9bfc9cfc9dfc9efc9ffca0fca1fca2fca3fca4fca5fca6fca7fca8fca9fcaafcabfcacfcadfcaefcaffcb0fcb1fcb2fcb3fcb4fcb5fcb6fcb7fcb8fcb9fcbafcbbfcbcfcbdfcbefcbffcc0fcc1fcc2fcc3fcc4fcc5fcc6fcc7fcc8fcc9fccafccbfcccfccdfccefccffcd0fcd1fcd2fcd3fcd4fcd5fcd6fcd7fcd8fcd9fcdafcdbfcdcfcddfcdefcdffce0fce1fce2fce3fce4fce5fce6fce7fce8fce9fceafcebfcecfcedfceefceffcf0fcf1fcf2fcf3fcf4fcf5fcf6fcf7fcf8fcf9fcfafcfbfcfcfcfdfcfefcfffc00fd01fd02fd03fd04fd05fd06fd07fd08fd09fd0afd0bfd0cfd0dfd0efd0ffd10fd11fd12fd13fd14fd15fd16fd17fd18fd19fd1afd1bfd1cfd1dfd1efd1ffd20fd21fd22fd23fd24fd25fd26fd27fd28fd29fd2afd2bfd2cfd2dfd2efd2ffd30fd31fd32fd33fd34fd35fd36fd37fd38fd39fd3afd3bfd3cfd3dfd3efd3ffd40fd41fd42fd43fd44fd45fd46fd47fd48fd49fd4afd4bfd4cfd4dfd4efd4ffd50fd51fd52fd53fd54fd55fd56fd57fd58fd59fd5afd5bfd5cfd5dfd5efd5ffd60fd61fd62fd63fd64fd65fd66fd67fd68fd69fd6afd6bfd6cfd6dfd6efd6ffd70fd71fd72fd73fd74fd75fd76fd77fd78fd79fd7afd7bfd7cfd7dfd7efd7ffd80fd81fd82fd83fd84fd85fd86fd87fd88fd89fd8afd8bfd8cfd8dfd8efd8ffd90fd91fd92fd93fd94fd95fd96fd97fd98fd99fd9afd9bfd9cfd9dfd9efd9ffda0fda1fda2fda3fda4fda5fda6fda7fda8fda9fdaafdabfdacfdadfdaefdaffdb0fdb1fdb2fdb3fdb4fdb5fdb6fdb7fdb8fdb9fdbafdbbfdbcfdbdfdbefdbffdc0fdc1fdc2fdc3fdc4fdc5fdc6fdc7fdc8fdc9fdcafdcbfdccfdcdfdcefdcffdd0fdd1fdd2fdd3fdd4fdd5fdd6fdd7fdd8fdd9fddafddbfddcfdddfddefddffde0fde1fde2fde3fde4fde5fde6fde7fde8fde9fdeafdebfdecfdedfdeefdeffdf0fdf1fdf2fdf3fdf4fdf5fdf6fdf7fdf8fdf9fdfafdfbfdfcfdfdfdfefdfffd00fe01fe02fe03fe04fe05fe06fe07fe08fe09fe0afe0bfe0cfe0dfe0efe0ffe10fe11fe12fe13fe14fe15fe16fe17fe18fe19fe1afe1bfe1cfe1dfe1efe1ffe20fe21fe22fe23fe24fe25fe26fe27fe28fe29fe2afe2bfe2cfe2dfe2efe2ffe30fe31fe32fe33fe34fe35fe36fe37fe38fe39fe3afe3bfe3cfe3dfe3efe3ffe40fe41fe42fe43fe44fe45fe46fe47fe48fe49fe4afe4bfe4cfe4dfe4efe4ffe50fe51fe52fe53fe54fe55fe56fe57fe58fe59fe5afe5bfe5cfe5dfe5efe5ffe60fe61fe62fe63fe64fe65fe66fe67fe68fe69fe6afe6bfe6cfe6dfe6efe6ffe70fe71fe72fe73fe74fe75fe76fe77fe78fe79fe7afe7bfe7cfe7dfe7efe7ffe80fe81fe82fe83fe84fe85fe86fe87fe88fe89fe8afe8bfe8cfe8dfe8efe8ffe90fe91fe92fe93fe94fe95fe96fe97fe98fe99fe9afe9bfe9cfe9dfe9efe9ffea0fea1fea2fea3fea4fea5fea6fea7fea8fea9feaafeabfeacfeadfeaefeaffeb0feb1feb2feb3feb4feb5feb6feb7feb8feb9febafebbfebcfebdfebefebffec0fec1fec2fec3fec4fec5fec6fec7fec8fec9fecafecbfeccfecdfecefecffed0fed1fed2fed3fed4fed5fed6fed7fed8fed9fedafedbfedcfeddfedefedffee0fee1fee2fee3fee4fee5fee6fee7fee8fee9feeafeebfeecfeedfeeefeeffef0fef1fef2fef3fef4fef5fef6fef7fef8fef9fefafefbfefcfefdfefefefffe00ff01ff02ff03ff04ff05ff06ff07ff08ff09ff0aff0bff0cff0dff0eff0fff10ff11ff12ff13ff14ff15ff16ff17ff18ff19ff1aff1bff1cff1dff1eff1fff20ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff3bff3cff3dff3eff3fff40ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff5bff5cff5dff5eff5fff60ff61ff62ff63ff64ff65ff66ff67ff68ff69ff6aff6bff6cff6dff6eff6fff70ff71ff72ff73ff74ff75ff76ff77ff78ff79ff7aff7bff7cff7dff7eff7fff80ff81ff82ff83ff84ff85ff86ff87ff88ff89ff8aff8bff8cff8dff8eff8fff90ff91ff92ff93ff94ff95ff96ff97ff98ff99ff9aff9bff9cff9dff9eff9fffa0ffa1ffa2ffa3ffa4ffa5ffa6ffa7ffa8ffa9ffaaffabffacffadffaeffafffb0ffb1ffb2ffb3ffb4ffb5ffb6ffb7ffb8ffb9ffbaffbbffbcffbdffbeffbfffc0ffc1ffc2ffc3ffc4ffc5ffc6ffc7ffc8ffc9ffcaffcbffccffcdffceffcfffd0ffd1ffd2ffd3ffd4ffd5ffd6ffd7ffd8ffd9ffdaffdbffdcffddffdeffdfffe0ffe1ffe2ffe3ffe4ffe5ffe6ffe7ffe8ffe9ffeaffebffecffedffeeffeffff0fff1fff2fff3fff4fff5fff6fff7fff8fff9fffafffbfffcfffdfffeffffff", 0x20000, 0x88000}, {&(0x7f0000045700)="46494c453000050000000000000000000100010040000100a0010000000800000000000000000000040000000000000008000000000000000000000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60100d800000000000000d80000000000000600000000000000040324004d00460054000000000000008000000048000000010040000000010000000000000000004a000000000000004000000000000000005802000000000000300200000000000030020000000000114b080000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000008000000000000100000000000000010000000000000001101040000000000ffffffff00000000", 0x1a0, 0xff800}, {&(0x7f0000045900)='\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, 0xff9e0}, {&(0x7f0000045a00)='\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, 0xffbe0}, {&(0x7f0000045b00)='\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, 0xffde0}, {&(0x7f0000045c00)="000000000000000000000000000000000000000000000000000000000000080046494c4530000500000000000000000001000100400001006001000000080000000000000000000003000000010000000200000000000000000000000000000010000000600000000000180000000000480000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd601002000000000000000200000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000030000000000000040000000000000000020000000000000002000000000000000200000000000002104ff0100000000ffffffff00000000", 0x180, 0xfffe0}, {&(0x7f0000045e00)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x1001e0}, {&(0x7f0000045f00)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x1003e0}, {&(0x7f0000046000)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x1005e0}, {&(0x7f0000046100)="000000000000000000000000000000000000000000000000000000000000020046494c4530000500000000000000000002000100400001006001000000080000000000000000000003000000020000000200000000000000000000000000000010000000600000000000180000000000480000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd601000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000007f0000000000000040000000000000000000040000000000000004000000000000000400000000002280000302000000ffffffff00000000", 0x180, 0x1007e0}, {&(0x7f0000046300)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x1009e0}, {&(0x7f0000046400)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x100be0}, {&(0x7f0000046500)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x100de0}, {&(0x7f0000046600)="000000000000000000000000000000000000000000000000000000000000020046494c453000050000000000000000000300010040000100e801000000080000000000000000000006000000030000000200000000000000000000000000000010000000480000000000180000000000300000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd6010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff00000000000000000000000000000000000000000000000000000200", 0x220, 0x100fe0}, {&(0x7f0000046900)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x1013e0}, {&(0x7f0000046a00)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0x1015e0}, {&(0x7f0000046b00)="0000000000000000000000000000000000000000000000000000000000000200ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0x40020, 0x1017e0}, {&(0x7f0000086c00)="eb52904e5446532020202000080100000000000000f8000000000000000000000000000080008000ff030000000000000800000000000000ff010000000000000100000002000000a3b8b20fcf7aa836000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x1ff800}, {&(0x7f0000086d00)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x1ff9e0}], 0x0, &(0x7f0000086e00)) 04:26:14 executing program 0: 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) clone(0x80100900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) exit_group(0x0) gettid() r0 = io_uring_setup(0x33d, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f0000000b40)=[0xffffffffffffffff], 0xf0) 04:26:14 executing program 1: 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) clone(0x80100900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) exit_group(0x0) gettid() r0 = io_uring_setup(0x33d, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f0000000b40)=[0xffffffffffffffff], 0xf0) 04:26:14 executing program 4: syz_emit_vhci(&(0x7f0000000040)=@HCI_EVENT_PKT={0x4, @hci_ev_cmd_status={{0xf, 0x4}, {0x1, 0xfa, 0x41b}}}, 0x7) 04:26:14 executing program 2: syz_open_dev$sndctrl(&(0x7f0000000100), 0x0, 0x0) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) ioctl$TUNATTACHFILTER(r0, 0x400454ca, &(0x7f0000000100)={0x0, 0x0}) ioctl$TUNSETOWNER(r0, 0x400454c9, 0xffffffffffffffff) r1 = dup2(r0, r0) ioctl$TUNSETVNETBE(r1, 0x400454de, &(0x7f00000000c0)) [ 1143.220794][T27284] usb 4-1: new high-speed USB device number 45 using dummy_hcd 04:26:14 executing program 0: r0 = socket$inet6_sctp(0xa, 0x1, 0x84) setsockopt(r0, 0x84, 0x80, 0x0, 0x0) [ 1143.380181][ T8695] loop5: detected capacity change from 0 to 8185 [ 1143.466957][ T8703] tun0: tun_chr_ioctl cmd 1074025694 [ 1143.485583][ T8695] ntfs: volume version 3.1. [ 1143.621096][T27284] usb 4-1: New USB device found, idVendor=17ef, idProduct=7203, bcdDevice=e1.dd [ 1143.641214][T27284] usb 4-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 1143.694996][T27284] usb 4-1: config 0 descriptor?? [ 1145.238377][T27284] asix 4-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 1145.248688][T27284] asix: probe of 4-1:0.0 failed with error -71 [ 1145.266673][T27284] usb 4-1: USB disconnect, device number 45 04:26:16 executing program 3: r0 = syz_usb_connect(0x0, 0x24, &(0x7f00000000c0)=ANY=[@ANYBLOB="0e01000066230f40ef170372dde100000001090212000100001a000904"], 0x0) syz_usb_control_io(r0, 0x0, &(0x7f0000000e00)={0x84, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000b80)={0x40, 0xb, 0x2, "569c"}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f0000000000)={0x2c, &(0x7f0000000100)=ANY=[], 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f0000000580)={0x2c, &(0x7f00000002c0), 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f00000004c0)={0x2c, &(0x7f0000000280)={0x0, 0x0, 0x2, "55e1"}, 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f0000000840)={0x2c, &(0x7f0000000680)={0x0, 0x0, 0x1, '$'}, 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, 0x0) 04:26:16 executing program 4: syz_emit_vhci(&(0x7f0000000040)=@HCI_EVENT_PKT={0x4, @hci_ev_cmd_status={{0xf, 0x4}, {0x1, 0xfa, 0x41b}}}, 0x7) 04:26:16 executing program 1: 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) clone(0x80100900, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) wait4(0x0, 0x0, 0x80000002, 0x0) exit_group(0x0) gettid() r0 = io_uring_setup(0x33d, &(0x7f0000000180)) io_uring_register$IORING_REGISTER_FILES(r0, 0x2, &(0x7f0000000b40)=[0xffffffffffffffff], 0xf0) 04:26:16 executing program 0: r0 = socket$inet6_sctp(0xa, 0x1, 0x84) setsockopt(r0, 0x84, 0x80, 0x0, 0x0) 04:26:16 executing program 2: syz_open_dev$sndctrl(&(0x7f0000000100), 0x0, 0x0) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) ioctl$TUNATTACHFILTER(r0, 0x400454ca, &(0x7f0000000100)={0x0, 0x0}) ioctl$TUNSETOWNER(r0, 0x400454c9, 0xffffffffffffffff) r1 = dup2(r0, r0) ioctl$TUNSETVNETBE(r1, 0x400454de, &(0x7f00000000c0)) 04:26:16 executing program 5: r0 = syz_open_dev$usbfs(&(0x7f0000000180), 0x77, 0x1) ioctl$USBDEVFS_FREE_STREAMS(r0, 0x8008551d, 0xfffffffffffffffd) 04:26:16 executing program 0: r0 = socket$inet6_sctp(0xa, 0x1, 0x84) setsockopt(r0, 0x84, 0x80, 0x0, 0x0) 04:26:17 executing program 1: r0 = socket$inet6(0xa, 0x80002, 0x0) r1 = perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$sock_ipv6_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f0000000140)={'ip6_vti0\x00', &(0x7f00000001c0)={'syztnl1\x00', 0x0, 0x29, 0x78, 0x6, 0x5, 0x42, @loopback, @dev={0xfe, 0x80, '\x00', 0x43}, 0x7800, 0x20, 0x8, 0xb09}}) ioctl$AUTOFS_DEV_IOCTL_CLOSEMOUNT(0xffffffffffffffff, 0xc0189375, &(0x7f0000000240)={{0x1, 0x1, 0x18, r1}, './file0\x00'}) setsockopt$inet6_mreq(r3, 0x29, 0x1b, &(0x7f0000000100)={@ipv4={'\x00', '\xff\xff', @empty}, r2}, 0x14) setsockopt$inet6_mreq(r0, 0x29, 0x1c, &(0x7f0000000180)={@remote}, 0x14) r4 = socket(0x40000000015, 0x5, 0x0) bind$inet(r4, &(0x7f0000000000)={0x2, 0x1, @local}, 0x10) sendmsg$FOU_CMD_ADD(r4, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x200800}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='G\x00h6', @ANYRES16=0x0, @ANYBLOB="04002bbd7000fbdbdf2501000000060001004e230000"], 0x1c}, 0x1, 0x0, 0x0, 0x4884}, 0x2000010) [ 1145.907765][ T8751] tun0: tun_chr_ioctl cmd 1074025694 04:26:17 executing program 4: syz_emit_vhci(&(0x7f0000000040)=@HCI_EVENT_PKT={0x4, @hci_ev_cmd_status={{0xf, 0x4}, {0x1, 0xfa, 0x41b}}}, 0x7) 04:26:17 executing program 5: r0 = syz_open_dev$usbfs(&(0x7f0000000180), 0x77, 0x1) ioctl$USBDEVFS_FREE_STREAMS(r0, 0x8008551d, 0xfffffffffffffffd) 04:26:17 executing program 2: syz_open_dev$sndctrl(&(0x7f0000000100), 0x0, 0x0) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) ioctl$TUNATTACHFILTER(r0, 0x400454ca, &(0x7f0000000100)={0x0, 0x0}) ioctl$TUNSETOWNER(r0, 0x400454c9, 0xffffffffffffffff) r1 = dup2(r0, r0) ioctl$TUNSETVNETBE(r1, 0x400454de, &(0x7f00000000c0)) 04:26:17 executing program 0: r0 = socket$inet6_sctp(0xa, 0x1, 0x84) setsockopt(r0, 0x84, 0x80, 0x0, 0x0) [ 1146.230676][T27284] usb 4-1: new high-speed USB device number 46 using dummy_hcd [ 1146.322472][ T8778] tun0: tun_chr_ioctl cmd 1074025694 [ 1146.591102][T27284] usb 4-1: New USB device found, idVendor=17ef, idProduct=7203, bcdDevice=e1.dd [ 1146.600337][T27284] usb 4-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 1146.612252][T27284] usb 4-1: config 0 descriptor?? [ 1147.890914][T27462] Bluetooth: hci1: command 0x0406 tx timeout [ 1148.180829][T27284] asix 4-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 1148.192303][T27284] asix: probe of 4-1:0.0 failed with error -71 [ 1148.212009][T27284] usb 4-1: USB disconnect, device number 46 04:26:19 executing program 3: r0 = syz_usb_connect(0x0, 0x24, &(0x7f00000000c0)=ANY=[@ANYBLOB="0e01000066230f40ef170372dde100000001090212000100001a000904"], 0x0) syz_usb_control_io(r0, 0x0, &(0x7f0000000e00)={0x84, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000b80)={0x40, 0xb, 0x2, "569c"}, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f0000000000)={0x2c, &(0x7f0000000100)=ANY=[], 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f0000000580)={0x2c, &(0x7f00000002c0), 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f00000004c0)={0x2c, &(0x7f0000000280)={0x0, 0x0, 0x2, "55e1"}, 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, &(0x7f0000000840)={0x2c, &(0x7f0000000680)={0x0, 0x0, 0x1, '$'}, 0x0, 0x0, 0x0, 0x0}) syz_usb_control_io$hid(r0, 0x0, 0x0) 04:26:19 executing program 5: r0 = syz_open_dev$usbfs(&(0x7f0000000180), 0x77, 0x1) ioctl$USBDEVFS_FREE_STREAMS(r0, 0x8008551d, 0xfffffffffffffffd) 04:26:19 executing program 4: ppoll(0x0, 0x0, 0x0, 0x0, 0x0) syz_mount_image$xfs(0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) perf_event_open(&(0x7f0000000380)={0x0, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x1012, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$kcm(0x10, 0x2, 0x10) sendmsg$kcm(r0, &(0x7f0000000000)={0x0, 0xfffffffffffffed3, &(0x7f0000000080)=[{&(0x7f0000000040)="e03f030029000505d25a80648c63940d0224fc60040003400a000500053582c137153e370248018000f01700d1bd", 0x33fe0}], 0x1}, 0x0) r1 = openat$sysfs(0xffffffffffffff9c, &(0x7f0000000040)='/sys/kernel/config', 0x0, 0x0) perf_event_open(&(0x7f00000000c0)={0x2, 0x80, 0x1f, 0x3, 0x6, 0x1, 0x0, 0x800, 0x16000, 0xa, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x4, 0x1, @perf_config_ext={0xd33, 0x101}, 0x40000, 0x401, 0xfffffc00, 0x3, 0x10001, 0x9, 0xbf, 0x0, 0x101, 0x0, 0x557d952f}, 0x0, 0x7, r1, 0x0) r2 = gettid() ptrace$setopts(0x4206, r2, 0x0, 0x200044) r3 = syz_open_dev$sndctrl(&(0x7f0000000040), 0x0, 0x0) ioctl$SNDRV_CTL_IOCTL_ELEM_ADD(r3, 0xc1105518, &(0x7f0000000400)={{0x1009, 0x0, 0x0, 0x7000000, 'syz1\x00'}, 0x5, 0x40, 0x1, 0x0, 0x0, 0x0, 'syz0\x00', 0x0, 0x0, '\x00', [0x0, 0x80, 0x400]}) 04:26:19 executing program 0: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) setsockopt$netlink_NETLINK_NO_ENOBUFS(r0, 0x10e, 0x5, 0x0, 0x0) 04:26:19 executing program 1: r0 = socket$inet6(0xa, 0x80002, 0x0) r1 = perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$sock_ipv6_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f0000000140)={'ip6_vti0\x00', &(0x7f00000001c0)={'syztnl1\x00', 0x0, 0x29, 0x78, 0x6, 0x5, 0x42, @loopback, @dev={0xfe, 0x80, '\x00', 0x43}, 0x7800, 0x20, 0x8, 0xb09}}) ioctl$AUTOFS_DEV_IOCTL_CLOSEMOUNT(0xffffffffffffffff, 0xc0189375, &(0x7f0000000240)={{0x1, 0x1, 0x18, r1}, './file0\x00'}) setsockopt$inet6_mreq(r3, 0x29, 0x1b, &(0x7f0000000100)={@ipv4={'\x00', '\xff\xff', @empty}, r2}, 0x14) setsockopt$inet6_mreq(r0, 0x29, 0x1c, &(0x7f0000000180)={@remote}, 0x14) r4 = socket(0x40000000015, 0x5, 0x0) bind$inet(r4, &(0x7f0000000000)={0x2, 0x1, @local}, 0x10) sendmsg$FOU_CMD_ADD(r4, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x200800}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='G\x00h6', @ANYRES16=0x0, @ANYBLOB="04002bbd7000fbdbdf2501000000060001004e230000"], 0x1c}, 0x1, 0x0, 0x0, 0x4884}, 0x2000010) 04:26:19 executing program 2: syz_open_dev$sndctrl(&(0x7f0000000100), 0x0, 0x0) r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) ioctl$TUNATTACHFILTER(r0, 0x400454ca, &(0x7f0000000100)={0x0, 0x0}) ioctl$TUNSETOWNER(r0, 0x400454c9, 0xffffffffffffffff) r1 = dup2(r0, r0) ioctl$TUNSETVNETBE(r1, 0x400454de, &(0x7f00000000c0)) [ 1148.818992][ T8808] tun0: tun_chr_ioctl cmd 1074025694 04:26:19 executing program 5: r0 = syz_open_dev$usbfs(&(0x7f0000000180), 0x77, 0x1) ioctl$USBDEVFS_FREE_STREAMS(r0, 0x8008551d, 0xfffffffffffffffd) [ 1148.846972][ T8814] netlink: 'syz-executor.4': attribute type 5 has an invalid length. 04:26:19 executing program 0: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) setsockopt$netlink_NETLINK_NO_ENOBUFS(r0, 0x10e, 0x5, 0x0, 0x0) 04:26:19 executing program 1: r0 = socket$inet6(0xa, 0x80002, 0x0) r1 = perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$sock_ipv6_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f0000000140)={'ip6_vti0\x00', &(0x7f00000001c0)={'syztnl1\x00', 0x0, 0x29, 0x78, 0x6, 0x5, 0x42, @loopback, @dev={0xfe, 0x80, '\x00', 0x43}, 0x7800, 0x20, 0x8, 0xb09}}) ioctl$AUTOFS_DEV_IOCTL_CLOSEMOUNT(0xffffffffffffffff, 0xc0189375, &(0x7f0000000240)={{0x1, 0x1, 0x18, r1}, './file0\x00'}) setsockopt$inet6_mreq(r3, 0x29, 0x1b, &(0x7f0000000100)={@ipv4={'\x00', '\xff\xff', @empty}, r2}, 0x14) setsockopt$inet6_mreq(r0, 0x29, 0x1c, &(0x7f0000000180)={@remote}, 0x14) r4 = socket(0x40000000015, 0x5, 0x0) bind$inet(r4, &(0x7f0000000000)={0x2, 0x1, @local}, 0x10) sendmsg$FOU_CMD_ADD(r4, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x200800}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='G\x00h6', @ANYRES16=0x0, @ANYBLOB="04002bbd7000fbdbdf2501000000060001004e230000"], 0x1c}, 0x1, 0x0, 0x0, 0x4884}, 0x2000010) 04:26:20 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1148.893065][ T8814] netlink: 'syz-executor.4': attribute type 11 has an invalid length. [ 1148.917266][ T8814] netlink: 194488 bytes leftover after parsing attributes in process `syz-executor.4'. 04:26:20 executing program 5: syz_emit_ethernet(0x4a, &(0x7f0000000140)={@link_local, @random="e9d25b1814bb", @void, {@ipv4={0x800, @icmp={{0x5, 0x4, 0x0, 0x0, 0x3c, 0x0, 0x0, 0x0, 0x29, 0x0, @remote, @local}, @dest_unreach={0x3, 0x0, 0x0, 0x0, 0x0, 0x0, {0x8, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}, @private, {[@timestamp={0x44, 0xc, 0x0, 0x0, 0x0, [0x0, 0x0]}]}}}}}}}, 0x0) 04:26:20 executing program 0: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) setsockopt$netlink_NETLINK_NO_ENOBUFS(r0, 0x10e, 0x5, 0x0, 0x0) [ 1149.180692][T27284] usb 4-1: new high-speed USB device number 47 using dummy_hcd [ 1149.218563][ T26] audit: type=1804 audit(1637295980.252:144): pid=8834 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/56/bus" dev="sda1" ino=15421 res=1 errno=0 [ 1149.284811][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1149.465118][ T26] audit: type=1804 audit(1637295980.502:145): pid=8844 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/56/bus" dev="sda1" ino=15421 res=1 errno=0 [ 1149.581326][T27284] usb 4-1: New USB device found, idVendor=17ef, idProduct=7203, bcdDevice=e1.dd [ 1149.590413][T27284] usb 4-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 1149.652031][T27284] usb 4-1: config 0 descriptor?? [ 1149.667508][ T8854] netlink: 'syz-executor.4': attribute type 5 has an invalid length. [ 1149.693164][ T26] audit: type=1804 audit(1637295980.732:146): pid=8834 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/56/bus" dev="sda1" ino=15421 res=1 errno=0 [ 1149.735090][ T8854] netlink: 'syz-executor.4': attribute type 11 has an invalid length. [ 1149.756452][ T8854] netlink: 194488 bytes leftover after parsing attributes in process `syz-executor.4'. [ 1149.783763][ T26] audit: type=1804 audit(1637295980.802:147): pid=8844 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/56/bus" dev="sda1" ino=15421 res=1 errno=0 [ 1149.857623][ T26] audit: type=1800 audit(1637295980.822:148): pid=8830 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=collect_data cause=failed comm="syz-executor.2" name="bus" dev="sda1" ino=15421 res=0 errno=0 [ 1151.220753][T27284] asix 4-1:0.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0000: -71 [ 1151.231097][T27284] asix: probe of 4-1:0.0 failed with error -71 [ 1151.247938][T27284] usb 4-1: USB disconnect, device number 47 04:26:22 executing program 5: syz_emit_ethernet(0x4a, &(0x7f0000000140)={@link_local, @random="e9d25b1814bb", @void, {@ipv4={0x800, @icmp={{0x5, 0x4, 0x0, 0x0, 0x3c, 0x0, 0x0, 0x0, 0x29, 0x0, @remote, @local}, @dest_unreach={0x3, 0x0, 0x0, 0x0, 0x0, 0x0, {0x8, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}, @private, {[@timestamp={0x44, 0xc, 0x0, 0x0, 0x0, [0x0, 0x0]}]}}}}}}}, 0x0) 04:26:22 executing program 1: r0 = socket$inet6(0xa, 0x80002, 0x0) r1 = perf_event_open(&(0x7f00000003c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$sock_ipv6_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f0000000140)={'ip6_vti0\x00', &(0x7f00000001c0)={'syztnl1\x00', 0x0, 0x29, 0x78, 0x6, 0x5, 0x42, @loopback, @dev={0xfe, 0x80, '\x00', 0x43}, 0x7800, 0x20, 0x8, 0xb09}}) ioctl$AUTOFS_DEV_IOCTL_CLOSEMOUNT(0xffffffffffffffff, 0xc0189375, &(0x7f0000000240)={{0x1, 0x1, 0x18, r1}, './file0\x00'}) setsockopt$inet6_mreq(r3, 0x29, 0x1b, &(0x7f0000000100)={@ipv4={'\x00', '\xff\xff', @empty}, r2}, 0x14) setsockopt$inet6_mreq(r0, 0x29, 0x1c, &(0x7f0000000180)={@remote}, 0x14) r4 = socket(0x40000000015, 0x5, 0x0) bind$inet(r4, &(0x7f0000000000)={0x2, 0x1, @local}, 0x10) sendmsg$FOU_CMD_ADD(r4, &(0x7f00000000c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x200800}, 0xc, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB='G\x00h6', @ANYRES16=0x0, @ANYBLOB="04002bbd7000fbdbdf2501000000060001004e230000"], 0x1c}, 0x1, 0x0, 0x0, 0x4884}, 0x2000010) 04:26:22 executing program 0: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) setsockopt$netlink_NETLINK_NO_ENOBUFS(r0, 0x10e, 0x5, 0x0, 0x0) 04:26:22 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:22 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:22 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:22 executing program 5: syz_emit_ethernet(0x4a, &(0x7f0000000140)={@link_local, @random="e9d25b1814bb", @void, {@ipv4={0x800, @icmp={{0x5, 0x4, 0x0, 0x0, 0x3c, 0x0, 0x0, 0x0, 0x29, 0x0, @remote, @local}, @dest_unreach={0x3, 0x0, 0x0, 0x0, 0x0, 0x0, {0x8, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}, @private, {[@timestamp={0x44, 0xc, 0x0, 0x0, 0x0, [0x0, 0x0]}]}}}}}}}, 0x0) 04:26:23 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:23 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1152.050029][ T26] audit: type=1804 audit(1637295983.082:149): pid=8883 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/57/bus" dev="sda1" ino=15527 res=1 errno=0 [ 1152.090606][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1152.219080][ T26] audit: type=1804 audit(1637295983.132:150): pid=8885 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir694107254/syzkaller.zQStUZ/780/bus" dev="sda1" ino=15533 res=1 errno=0 [ 1152.262444][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 04:26:23 executing program 5: syz_emit_ethernet(0x4a, &(0x7f0000000140)={@link_local, @random="e9d25b1814bb", @void, {@ipv4={0x800, @icmp={{0x5, 0x4, 0x0, 0x0, 0x3c, 0x0, 0x0, 0x0, 0x29, 0x0, @remote, @local}, @dest_unreach={0x3, 0x0, 0x0, 0x0, 0x0, 0x0, {0x8, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @initdev={0xac, 0x1e, 0x0, 0x0}, @private, {[@timestamp={0x44, 0xc, 0x0, 0x0, 0x0, [0x0, 0x0]}]}}}}}}}, 0x0) [ 1152.487662][ T26] audit: type=1804 audit(1637295983.242:151): pid=8890 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir209216187/syzkaller.mLycKM/1135/bus" dev="sda1" ino=15446 res=1 errno=0 [ 1152.524908][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 04:26:23 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:23 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1152.710109][ T26] audit: type=1804 audit(1637295983.292:152): pid=8883 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/57/bus" dev="sda1" ino=15527 res=1 errno=0 [ 1152.886956][ T26] audit: type=1804 audit(1637295983.362:153): pid=8894 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.0" name="/root/syzkaller-testdir698100538/syzkaller.fyaSvo/792/bus" dev="sda1" ino=15553 res=1 errno=0 04:26: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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1153.126143][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 04:26:24 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1153.277594][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 04:26:24 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26: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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:24 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1153.765638][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1154.029401][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1154.228577][ T26] kauditd_printk_skb: 18 callbacks suppressed [ 1154.228595][ T26] audit: type=1804 audit(1637295985.262:172): pid=8936 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.5" name="/root/syzkaller-testdir582118851/syzkaller.TEIpzd/116/bus" dev="sda1" ino=15574 res=1 errno=0 [ 1154.295808][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 04:26:25 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:25 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1154.512945][ T26] audit: type=1804 audit(1637295985.402:173): pid=8937 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.5" name="/root/syzkaller-testdir582118851/syzkaller.TEIpzd/116/bus" dev="sda1" ino=15574 res=1 errno=0 04:26:25 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:25 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) 04:26:25 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1154.789838][ T26] audit: type=1804 audit(1637295985.822:174): pid=8942 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.1" name="/root/syzkaller-testdir024516521/syzkaller.9HQDnb/163/bus" dev="sda1" ino=15441 res=1 errno=0 04:26:25 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, 0x0, 0xffffffffffffffff, 0x0) r2 = open(&(0x7f0000002000)='./bus\x00', 0x141042, 0x0) ftruncate(r2, 0x2007fff) 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) ioctl$AUTOFS_DEV_IOCTL_SETPIPEFD(0xffffffffffffffff, 0xc0189378, &(0x7f0000000000)=ANY=[]) sendfile(r5, r3, 0x0, 0x800100020016) creat(&(0x7f0000000040)='./bus\x00', 0x0) [ 1154.856623][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1154.952156][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1155.035278][ T26] audit: type=1804 audit(1637295985.922:175): pid=8947 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.3" name="/root/syzkaller-testdir209216187/syzkaller.mLycKM/1137/bus" dev="sda1" ino=15443 res=1 errno=0 [ 1155.312816][ T26] audit: type=1804 audit(1637295986.072:176): pid=8953 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.1" name="/root/syzkaller-testdir024516521/syzkaller.9HQDnb/163/bus" dev="sda1" ino=15441 res=1 errno=0 [ 1155.406224][ C1] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. [ 1155.424995][ C0] TCP: request_sock_TCPv6: Possible SYN flooding on port 20002. Sending cookies. Check SNMP counters. 04:26:26 executing program 3: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) [ 1155.725573][ T26] audit: type=1804 audit(1637295986.132:177): pid=8955 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.3" name="/root/syzkaller-testdir209216187/syzkaller.mLycKM/1137/bus" dev="sda1" ino=15443 res=1 errno=0 04:26:27 executing program 4: prlimit64(0x0, 0xe, &(0x7f0000000280)={0xd, 0xffffffffffffff81}, 0x0) r0 = getpid() sched_setattr(r0, &(0x7f0000000040)={0x38, 0x1, 0x0, 0x0, 0x5}, 0x0) seccomp$SECCOMP_SET_MODE_STRICT(0x0, 0x0, 0x0) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r3, 0x1, r1, &(0x7f0000000140)) epoll_pwait(r3, &(0x7f00000000c0)=[{}], 0xffe0, 0x200035, 0x0, 0x0) close(r2) [ 1155.952510][ T26] audit: type=1804 audit(1637295986.242:178): pid=8957 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.4" name="/root/syzkaller-testdir694107254/syzkaller.zQStUZ/782/bus" dev="sda1" ino=15432 res=1 errno=0 04:26:27 executing program 1: r0 = openat$sequencer(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) ioctl$SNDCTL_SEQ_CTRLRATE(r0, 0xc0046d00, 0x0) 04:26:27 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 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 = syz_open_procfs(0x0, &(0x7f0000002080)='net/ip_vs\x00') preadv(r0, &(0x7f0000001240)=[{&(0x7f0000000000)=""/169, 0xa9}], 0x1, 0x0, 0x0) 04:26:27 executing program 0: r0 = openat$misdntimer(0xffffffffffffff9c, &(0x7f00000007c0), 0x0, 0x0) ioctl$F2FS_IOC_RELEASE_COMPRESS_BLOCKS(r0, 0x541b, 0x0) [ 1156.152713][ T26] audit: type=1804 audit(1637295986.382:179): pid=8958 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.5" name="/root/syzkaller-testdir582118851/syzkaller.TEIpzd/117/bus" dev="sda1" ino=15579 res=1 errno=0 [ 1156.333250][ T26] audit: type=1804 audit(1637295986.412:180): pid=8949 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=open_writers comm="syz-executor.2" name="/root/syzkaller-testdir016953414/syzkaller.R8PmLi/59/bus" dev="sda1" ino=15459 res=1 errno=0 04:26:27 executing program 3: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:27 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 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 = syz_open_procfs(0x0, &(0x7f0000002080)='net/ip_vs\x00') preadv(r0, &(0x7f0000001240)=[{&(0x7f0000000000)=""/169, 0xa9}], 0x1, 0x0, 0x0) 04:26:27 executing program 1: r0 = openat$sequencer(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) ioctl$SNDCTL_SEQ_CTRLRATE(r0, 0xc0046d00, 0x0) [ 1156.505515][ T26] audit: type=1804 audit(1637295986.492:181): pid=8963 uid=0 auid=4294967295 ses=4294967295 subj==unconfined op=invalid_pcr cause=ToMToU comm="syz-executor.4" name="/root/syzkaller-testdir694107254/syzkaller.zQStUZ/782/bus" dev="sda1" ino=15432 res=1 errno=0 04:26:27 executing program 0: r0 = openat$misdntimer(0xffffffffffffff9c, &(0x7f00000007c0), 0x0, 0x0) ioctl$F2FS_IOC_RELEASE_COMPRESS_BLOCKS(r0, 0x541b, 0x0) 04:26:27 executing program 2: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:27 executing program 3: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:27 executing program 1: r0 = openat$sequencer(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) ioctl$SNDCTL_SEQ_CTRLRATE(r0, 0xc0046d00, 0x0) 04:26:27 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 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 = syz_open_procfs(0x0, &(0x7f0000002080)='net/ip_vs\x00') preadv(r0, &(0x7f0000001240)=[{&(0x7f0000000000)=""/169, 0xa9}], 0x1, 0x0, 0x0) 04:26:28 executing program 4: prlimit64(0x0, 0xe, &(0x7f0000000280)={0xd, 0xffffffffffffff81}, 0x0) r0 = getpid() sched_setattr(r0, &(0x7f0000000040)={0x38, 0x1, 0x0, 0x0, 0x5}, 0x0) seccomp$SECCOMP_SET_MODE_STRICT(0x0, 0x0, 0x0) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r3, 0x1, r1, &(0x7f0000000140)) epoll_pwait(r3, &(0x7f00000000c0)=[{}], 0xffe0, 0x200035, 0x0, 0x0) close(r2) 04:26:28 executing program 0: r0 = openat$misdntimer(0xffffffffffffff9c, &(0x7f00000007c0), 0x0, 0x0) ioctl$F2FS_IOC_RELEASE_COMPRESS_BLOCKS(r0, 0x541b, 0x0) 04:26:28 executing program 1: r0 = openat$sequencer(0xffffffffffffff9c, &(0x7f00000001c0), 0x0, 0x0) ioctl$SNDCTL_SEQ_CTRLRATE(r0, 0xc0046d00, 0x0) 04:26:28 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 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 = syz_open_procfs(0x0, &(0x7f0000002080)='net/ip_vs\x00') preadv(r0, &(0x7f0000001240)=[{&(0x7f0000000000)=""/169, 0xa9}], 0x1, 0x0, 0x0) 04:26:28 executing program 0: r0 = openat$misdntimer(0xffffffffffffff9c, &(0x7f00000007c0), 0x0, 0x0) ioctl$F2FS_IOC_RELEASE_COMPRESS_BLOCKS(r0, 0x541b, 0x0) 04:26:28 executing program 2: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:28 executing program 3: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:28 executing program 1: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:28 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) 04:26:28 executing program 0: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000042c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) unlink(&(0x7f0000000000)='./file0/file0\x00') read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x21}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000008a40)="e74a0f89e88c3aba2d1c776ab25b221b366ab0ac5db05ec87f720b51be2b46fe1aa4d1f50e8d278e8e9641885de16dd0ab77530a7a8c79b801a4c8c9567e29f0fa2752524cd11497506cf97d82f723a251df277d637259d2bb510d2b02d10e860a1edc040eee393f7888f1d66d3a473cb767afa655e1b44ccbec58fb5c93aace8c0b871aa42975bf03e7e187400662d6904e49dee4e2af4c6102ecc3f0337be6784bc4a2a31309934f6f5d25877efe0ed45a3aa006d101d91f9b2afc4f5e481a8421c4c734722ef89ca7f9b44bed7000782cfdb5a200c3a1e9a277a9655f28767a39f9e495dec1e1bb617037b6058df1ac7127ab3150232370a5f2dc482f007ff59665fcbc5eadb27cfc85ffaf1c6da0fc2bcd45e04c038a09526be1689e06771f18a2cdc8e66741fedc0648170210d1980db4781b1ac2968a88df1283eac5f941c56fb5c9fb9dfd9b97abf16d382f346b777f92d9a0342099617e1f6be516d856dcec566100be918c31b31bae1201408197c93352cfa7b68d8ff995bfaef9a1557a00f9c411e5b82818f96f53608cb486d134bcd8ac55cd0e9979c9427abe385dfd50b4096764a7d2b3fbb3bbebd826af4abb97bb0fa75214a5c2a684239686c0bda28d382dab3f293d85ba35edd9e2f22eadf3733944267001e596b8bd36e308dc58d64df4a54779febedaeece93767debfd371bb76a2b9961d007fcb4fa607f1d03ed4ec8a50ed7abe639784569d11787b4e145caceec20145d2ae15b9fd9790589dd2a3612247c6edceb22c7a790d10944acd16050ad6e3de7a4aae0b1c4fd0dbdb8bb70946abf2c95e7e1a6c46d46d98a483edb5e02b7a83dbe8f0608167e7a01671f135b613c11cb307b8e004d4306884907bfc83e0397827146f5101ce5528dd7c07a5d364dcf1857772d7ea518a9847a853ec9e75df1e14fee7c5087dcd923808ded43a63a0716fcc0661c1018847bb327633a1ff9e0dffe85c971e2458b4eca86f44e20db067b30e1cc5f4eed7064f76fec7a772b8239e24de0bc65ed7a48521ce8f9470e5289259c1a93c63251ba3cb9fd40074a66c2ae0d6ab50bc1428ea14a254aba9bf6875885fac3cebababe0abe4fa2c4aa02a83698c15fedf2dc4fe85474c26a9419c8a818515c170576ba2bdeedd7fcc6f318414a4a3d21c9cbeeda8a93420b0edf749ea937d15e3624b9ee08de930510b108de17e126ba03acd647a7ec8ddafe3ca8eddafda604424cc0e1b3229e64b3a8f334cf81062066e6d451306e00c61b0ae09a7457c7a9299acba8f28210e8bf2de29c413c27c06a885f4d76223b657e08e24e881db1bcfe5b6bfd21c10ddd08b82782e1d63f72ec05dadcb3e6f4c651acfb8e108609f37a0ebfa1992eabdbb0d59c3bdfdb6db5c8ee69280855a5a28f25f18c43da954337213621ff72b607e1881bcca05b53f1c48206c4a41ea513bb45197e9ae69064557dda4ab0f2785f5f5e9d0c7b1c81838c5d48f6376a8fcc0230bdde2471a3521ba0cfc222989b336c7aaf81664e3465f45d4d0820833451fa85ce0610dec0bb0dc7020a91f5bfdb6ddee67152a497507c391207b7aeed6bb1f6eb812380b33e42b78d1c1175d9aeef5c67894879d6200acb2aea17c5461bd2909315fb7611d72aaa92a5b1801b6f0402ae8a7a251bc5b7e652861886edcf155515c34306a96e9af5d19d29d425f30dbcc7715490343036ffc28b117c234aefd3e9a210e2248379754ee19c7b24f75ed41e418321a2ee4607e6801bf764f9aac82c13685d81865e4c68ee67d23c02937074e0099461711c5ba2c40f4218f00ff884db32bd6b6c753f352d27de3e9ef39a449f470cc9d5f0a347603ffe125365db8f7ed8db6a6ff3f054b7e3b1e1ba4e3b120abee0d791cd64f3ecab1be0a985f5a04c9bf91566b6af9a0705618a7eb7bd34dc71c6e982fe9c684d2fdcaf5ad1f4366c6b1573520b3a43d1575973976e5a2d8342836da61a919fe291d4e06dc8b8047fdaa591db96c5f708d7efc10d0febd2de603998daa218841c38f38c294f79a058c14b8451e970d45b64ab8cfd811e332ca469c1ad1a703c7889b6af2430b5a9a16efb95767cf6e176aeafe1d7f3e207b92316038a694dc77e4f9d423f023e6e92994bcacc8811afd8022cdf24268c646e4f8f1eec0ebd9adf11a338bb0b76bffdfdba5060cd8858c3861c2020a8367b65b272305871501ce9131ba58f4bee28542651ff43e4b044e08eebdac22901166e5a4690335d5c195d0d895470df40c756e553230fb20485f25e6122c131a1c240a8eeeadae8bd743e25aa7445c4d13bcfc2012a3fffd8e71840a73b0fb86e01b189ed98ffaf53317a3be72575c72b3851f5e6d58946ea53c27a2c074de878396bce0f0a8639e4cd188b0c41bc93ddf2e2bc21f4a6a2a5231612f7cefa0735eaf3fc599c018bfb788b0951173df46c9f57ac58a70364a78d4eed63659e80983ff21b441ba041a6e0f83cf5cbb46787f8032f35ee2d35fbf278ff6b0c4742b0c8e9b8b51081b3db97c75feffcf4793b50a774f9fdb8e1df5bc3b337964677d2e7148e31ea866090136940a9670ff492d88b48d7f5a9cebf32b865381303636930ac76c940454bca3060d8f3e4858b55147eccdbcdef80c64b8030498ce8e15420d1ea46c5406a55c89434765232bab57df4fd145a60191eea9b1d634968e0087083db8bd71be34739261753fba1eb47edda8df45c8bef040b152b1da174b1da36f731cd77a3ed39d6ffdd5bd68d4288c4d464e476c136d3ebd379168bf87ac8ba63a8a6a3f2430af352f2c252a0ef3ea2560870aba83ccecdd0e57ce9859821f0e1da1afec294048a1e22cdd02d5685181998ad20b26539aeb8e8fe02da9f3965583cc8109146ba182b6c8c945bc0e3098a353d07f9f28737fc73ecec7d12ac68f51135a617291d57e57a625bc7fc2174560f24a7667d4106c11922815af1fc4bfca24b625ff6953d8255a7771542d2fccaf74195c957faa3328cb7180b12efc3640eeac8dbac1aa55d236904975ea0521d8b3aa792c8c3194eb15497fb68351b2f662e6dcbb03607feb7c2f29456085d96d4dbcfbbcb2828c812f21624a301b648201d27b9e80862189e7f8e81b479301b4a55dc2aa7732b3460001d072f04c96dc34fbe5f7eaa12107dee5c4fcab6977d65d3e5a3cb2b2334fa2ed10a0ff0f02b43a16f5bfb6d4909b70af2b1b1d072e5c8b0a344ade8c7044a2a1ab9a58ff0e629a2345a9633513ac429ba96b8911c227a306fb23769d02b233b869c91abd605e4d13e92f56b13414e8b29e1e9b203154db9380bbfb66c4548df00dc5f3b13909b2bc4e90d5e3a42b6e4d6e8e1eaff7b319179975ae90e3ded62efbac60abbb57f07c348a4eec2032289ac91476297385e0ba3a9bb08de5894baaf7c6a46b4e04e75c10722dc2c5af819638b8d41c163065cd73b8be3ef6c36cbc556fe87b4d35f14211a86fb8800bcf677a17ab8808224ed0ca780338893612a686fd6d44a1b621096477f6f0760abb232d7bdacf9c7811eb0d87d69452f74c7563c583a3972083cefc8ea05513b87f6d0bc52fcca7d1fa02d5f5f06837526597ea38be7c7a4b33f53917e84e7a46021b85d416a6455cba0646a2e8106ca515022355e72f5c5c81d23b2bc2abcc3ed75db75da3301df758f797a61c33bf8bd3711c202da94de304b7ccd1049d58e13190d56627755ab3ebcdd2922bc162240b9be762247423b434122bf5173147ac981beaf9dcf95f0f28601b5d0dcea36ef0f06be3eaf57a86e0523cdc712ed58bbf081ab9ddf9cc404f6dc3e48299d457c79735587d83d64af69bbcdd1c9654514aee10728fb51ac14f5de78152a2e15b7d40189903e1c8f6decc9b9c22590acfc66c2c61028f2d55609a25e0a99beb9b542ad9b0cd8dc60f5eeea600e8567fdf1675bad45b6d10d4ed8f8bbf012ce632d9d1b73be0944eb9b475a1567c21e22f5b5db331cbc0312fa9069fa04aab947a57d28e7620ad728a589ffe214409284b9ae9fecebf5ef5a99aec1efdde05eb7f2bf80ea66cb5f4580e5eb75e8aaccf203b0e8c29275c05c8ed39029b5d74e20b92dd2b2e6525e7e4e7216735d74f7db4cfb4f76083f69bd6cb2f45a29229e38b54f1e4f5a73d579c23119f720e31d39c119f0f07141c4a461a710e28333583538bbcce0e6b06f38efc9dfe99c826c54295362553f87536ef5280016b7df0652a70368a712e3b0d1b3d73d8266d82d519e636548ec28767b9b109584c2a07e2566abe32d0cc509414b1711c53a37f3b7d218ce3bddcd3ce3bdcc2a7544fdf19ec9b6bd5a35fa8a30226ff37fb679138a5aa53f952b3f8b68d9a7eeda49f055804d5d25b10867d8652290d7e96a0c0a64fad854e6935cd1594655617d4c5a70074b0febf8272468f8968876acf52f1be6adc27bd3e730487fe5ae444b7b6c20f24c825474a95a1a739be1650ead9c7cae41718b131d4aa8291fb2dc45f5633f482b6e31aee9fd0432da9065b084e5e58cad91c5f9835c524b093cac7bba5cdcdb70d2dbf3ca0520f5f0dd74212c58c26b4e45122e583b5caef4ccf202a6b3a5ad0de8c9859c82c397b018e7528acb59cfd465b30577a8d4a358b58d0d5e510e1c61a522a4f843d0e580bedd5d97aff93915e756800ca9890e37275659efd87c6f31466e56141a32ec4c789afb3fa942064caabee55587a69f2600e708a9e58eca5f5c2ed0d348cef955a261b0ffda9c51e70f2335dafa3c2e6fc5efe28229c5bfa7a87361bf6fbdc74731b67003b457616ea7bd30aff832b7d18f4367bec3934983c9363adc2b1ce3c63fc4ac0d9a8e15a727b57131ac6d140305dc69b866e4212c6a58ee1ef5734db31e95f08688e8f8f6cb5b1ca4d9579ee09b7f4391e39dd84b2e7b2bc4e3a1d330f4b29426864ee08b59956d688a61aec981062af97b797b9921f8f881b7baaa200b4050769d8ff1a95d5fd1c4063f2f4aa472117429040f1ff2b50e794c2197d472adaef17c8ad035529593e6bde8318d90a16190efe531f4e1c83d317ce279d71711f3dc5b2ca6c2939caedd688927144c8f51da45fcea09b551d1c906585a7663834ee0d6372d2ec5a41af84ac3690aeb2723517dff02fcca3d30fbe33c8845808b2a1975e098d875e4512ffc527a9372a6fa6df55220182c02f22b39295526c40efae0d14eeeeec35e617a6894f58bb51a0d9c621bdc72ccd8bdd8091290a5dbef4675c3cbdff98050eb4bf04eb9a2159ce14bf68f3408e2c482410dd1ee2657477573acca4b9ac702625c0d628682753f2e0146799a62dfce3ec882fefd902e8fb4c67529baec2434154329e1d95dfc5136b3b6e6ba60da0b48cfc9391ac0b055f7f75ab5b2a0e5eb396acb972bd380ed670ace57fba31145609806b2d90e02b2ceba535b3477071021788e2ad746ca1ab7a682093a8e8b183830a0ff3a40fc9f191d3415d050bdbbc9799ea9b1100471e29feff398d251699d5ec8304328e748bfd34ab714ea534a49da85f173af9bda7a0296e511df46cbf86b61e89ef22e6de5a3b0fb9fcbd7115879d1d84f560dccb7e06f9cad4a1c9332aa4861ea97ed6619e839b302eb9602b2b81537815594bd71703b8272876de20f5b08b796eb5985a095a357fedbc513737b74c4a37d6abf063807f54e14d001de8e78f129c646214dc88f5c21c2185000eb359702036d97481bab9756244413530bb67794f8f2edd7be9caedc86bcf6af2127671ab63ff4e6db943200e01b10b01c0b9fc81f851513ee59afe255387fadebfab57b5a152cab4933cef455700091d832384ae3871a91553574b297ed5ddd3f70d04adeb30e1342214435c305cb34159a357d23bdb2635e2abf29ea68e44f5a47f9bdd4c949d9aeb87cabf6b3917cc6bcfec88bc18fb6d62f3ca7a57bf4a960f589fdeb827f482b9f9b05541da8db5ed22b4fb3da5bad8e179dcb72ef378b7c6db26bd5bf10b797e73cb0cc29c7fd96f49d7d01e1bed6e750d35ae86bbe120bae824a089153f395e8c4702adeb83eada5c9ea678c649fd886f5e41173327c47236e7ddee054bdafe36bcfee9ad62909fdc53cddf2b40d0be68a91d774305e4359701aaa95d438cd4dd0b7bf4a3e38bcf3158e71feb46793a5e0cdc8e27e6dbd7f92213d5fb3165a68f411c224774730e9f745a9eacaf32173eebb198a8643bbb90c954734bdcd473bf0d48ca3362ca6788a90fa34aa056ef8d3e41aae3f3500adc509fe1025bc31b526623a30c97d550c2008bf8798042c0aedf3b306d4090af1944592a5793539df69cb33beb42549602fc9f98a9b9d7d4170ebc210e6217908833c5325bcfb9c82b0701cdb8c9653adb1da531e7ee4024efc26041772a28287684d19db5cc16ccc62b2a1b4642a73f44c75797677f6a490888f473c36310f85f51ff83443450f75333f00a4a5ddc4a90d066a44fa3cf763e65765f14d8e3e417f1bd19a6424488e5912ffb9848b66faf05b732f3569dc254cab7dd2bebaac809693f83005ed6e89f3f49ecac10de6aea859675ead7ca6b68ab62a1324627dc7ebfab24132e59eb9c912ff2cde91fa324d0488350b7b6af6187690835258540e9341d0ee1a8699a1f9b4002a5e5c419f75e58f13231415e0987c9bb9deb4780a887a1eeb33e138fbfe4363b397ac3c433b77ccac37ce6bad9101b9919bf3951aaa0e7c079edebfc17633f18d44fbbbaf85a6f906881b265bab9ad8012be7dd4d6a86a49df72d9d7efaf2d99593395e8150f40ea89232f0a974072e965dc420fdf138f7f8bea3963f95dcacef1894033bd5a9f954e1d25cad40a62f382f224b7714e3c57bfc91233314b3802deee382dbbf80fc90714c741ce9417dbecb9039e945f8edc623ca52a095768935106b60756bfe1f5dd0de74636d0467d1460830542b8639bc1c5c6012857950003c2e604204c8ed674e3ecb284aa087308b21ea6b4df7995c6ed8c93aadd7c1cfbb0f4c6a9c043f8556ae2b796ec1977f981cdbd4c1b24543297e7c0af25aa012010e9e6f503264e8df555426b617ceeaf7536548d983ab897a7e0a5c821ea4efbe426c20aaa542270d0dd692a590e230c244a881b883b61ec3bad14dbee6cba17f81f4fd56290d3ca124378a72adf8ad9f9e2af3c6e29987decb125a74a7c6e2bba7244fc7ebc393963be4062a57ec9210919d867729ceb64f7d540d1d5d82bcce83cffc526801435ffee0205a18caf3cf716aeb28d85c5951dd18d7cf8bf5e1e83f84865ebf6e65bdc75ada2fddb2c06620f15595633263a2e053a8a36ea80cae0ab13e5a96cb34f813bf466aeb6a9e8f7b70df5ed563518b96cd253a4a590bbcf21cdbc7c027cec64afd15e52aa97f8a6890e2fd95354572c4371f6e0d8b588c7ecb832d2911f2bfd03407c01d6dc5757ed68a6a037397cd7d0e1d39b644ac7bf286b34c61b8b605e47522d212a1f7471251ff627a935daea7aed047a6bb418c03e41e674897da32d99b69c959a0a956f78b7c787415401eda1f35ced661905adbe1666a928fd1564979a35b2d3962d551c1ce5d44f3627155fc5b3a1be4318ecc41222c712f56d276d800a8f65eada3acd03982f705f970fc7ddb1233ae5e2c2ef2bbdf3780ee8b42878ddffd2152a6083c75bf55b72d095407efb7dccdca556a5bc6ff8fb71335ff8d944ed3a7d82ff982c6212011c7c61c47d4faeb18598111572f605b66d49d00b3b666b808259bf6db62d3b4874a9819ea938c6f60baebeadefce11df20523e628a524d6ded161bdd2f60a67e52e4f20e2b980111daaf4d6c1db53576ac1d599a659bec0e6cfcd665dd3abe6be278ecf1e22f994e25d07937cee04a1ffe90bd9201d91de25535d67d7a5d1ac8bc058afe38dc46a6ca2b7f467dcaedc5cf4957200d64d9cc058e3bf24bae9151c0a4f60a5fbc2ff1df7a442726b73a06b007048e8a2ec1c4ca775374efaa6e38ff210a3c397e67398dd2e97aa26639034a71da887f0880be14dfc5721b99d79bf5fba9d9cfc35a5dfddf9ca58036083e94e68ed5b3147a46edd5cf2f1d3efcd460790890caaf1d08f765bfef6d42e226370c6a63ca1ecc4dee7caecfd8008bcb4b7b2b6d782415c9af164207d3a21421a4412f2f31a703f30c7dadc40735f138195e6778ecc13cce38cdc13fb2d8dd59bdd420e674ca4eaafac2565b61fb1b6a8f658a3bfe1a318cca3c2ea412494d3b484718ce4044da3136cc597767a8339e772ae43f98f2a1d36b1d228eb05cfe29f4b908cb7a3aa322fe2208e7ed1df22732a72a4903a8c91483c4a6a73711ca2cb22eec483780e63f76509f642d4e607fd19a71e182f49a75dd8ab5a55b5423ebdc2cbab0d8df1871ceed5ba14229a79d152813ddd55c7ea9b3b29debd8b4b2d4a15a83441f82a6e07b52fba99b64753e55aa36549954d2bd5fdaa9e151e441f23187d698ab4a0507e32222b3779cb341cd46d43814fd59b230b16bda7dcb789ab3ffa3a43b68063ae40f9a1953c90d96f239819e2abf63d0a853135a23f031726b794730bdd9fbaa512865fd91d4d9e9c61fa89e36137bc4331be7c94167a178b46f60c5a2599ab3d68999d4c14d91b1d4d9d5c1f7174ad5dfe57a3945898753f0a58d6e81d6508ee986ea41ff56cb410ee6b734637b4c8dd24b8e269d1294ae449c418fd4ffb736115a2a83d1e57daca5af10de77d0cf0c1fef985e44676e6f108f3c83caa0d6efbbb4083ff2662cdfe1672af39d2f75d29d4e33c97c3fef76e66c582142af188427ffb4d99a7a1683799764e2f03f84765acf8a1260d56b35355a38b0835b299d34b34f998bc01d41133bc41017128392dadcacc529b09ffdc397cf4340a5ab7e81f623776455576e866dd9736795c5f40a80b52a4f5c07927d811f34b2a4f651b66772209920c491fb740a11dfdae2e3000107c33083fb10f6208372acf2516a40e1dbbfc9dd32fcf3dfcce8e9c81349ca28817d86e56f3603040917690b0a47438d29817f36b190a2581e7a3fcea4895cbab6ad2acca089252fdd2bfea22637502896e011a88d2403ded83f9a067c8172300e3cdd1f10c5f3be6d5123521205d86966f00677f5d589f4cec5766c74420cde42b88ce0901188fa32952e404273f4a62610e77e57222e00a56bda0bc39c48de96fbfb54a6d8a255ef9c73d67efac6fa23a760c1553cdfb74bcbb51dd0f727ea58aaedbfabf96dddfc9cef2f844270268deeeed15da525e775a49fbf5f6f312fe20c3c272a08c919a1f8f60e763156f63a508ec49a5d4ca3d5a8999552562c6058d404db130619d21cb56be4d2c60532c48f5ff3d5c867ca68a86006b4922bacbc598b4267f6fc97840850fff307496441e546847c617f94a223c6dcdba2aa66e7dd71a0b92d09f988dc442b78f5b1b2a84871f4b66698cdce033f7a76595337f1e857c311318374947a9934ca531b1c14df7a6ed0f59fc97064686e37e1fb42a2ac898ddbf68b1763409bd6fb6dc8f720321f5831aef8402e96106ace14bf82ccc3337c1c9bce7f908a5b8141d4f6636278d179014c77b334577d42d28eea6f48680edf2065cc0c3b066c8c0d9cbb301a5b010a8f9d6098c189cc54f22180a3fffa2ede4834117e18b853a833876ee6097c7642aa93a03e0ca2387a84d0f0d1189b35e9f9dfb775646903b33297097bf9d494221c3641dde223c7ef77bd92b1f7ee4feff19950371da95e0b7536985f2410aee2b0ee64c60aeb9e16e40d980e8e91314e16f9e28ed964d8bd2e821a1c9770fe4632a4a1141b68b7270e7906b975e8dc7d15ac972c306b0590d4c73b2ef7cbb58ab00511505d8e32bc7e848bac899bb4e9a4d40998e0e96f72b57b7fa4c421e33b2e8e5e9991931f306048287fa44b0ebfd156cec56c2d4836a21e4d5662ee6bb0a0206a96af3a80d802b414f4903f97f23ef4fae51457b98f48baf8415f5ee004a4ba6a8ad1b162e0de1a6afdf8a73ba12c1897933dffca1ed8f6c7b6c4d76885f07634c6e9e2c427447c5605d1f4c11d1b5cf98fda7078b7755bcb2478796c8b26d986f3411986d4ba6a716216d794301b8a143e7ad1534c31f7e41090d6cf9d952780d5ebad58ad7aa6667a5b6037c8eb7a0806cef0fa14484af3c26f1d55cb9b53adc83762fa3b135af262f09c4c115c5c86cdc9775d89fd13abcb48c5eca2357d76ffc4a061ba230073e788730e1d81acac9558ae7e35b3c7f8cd81c010215b1468abcca7c64b155fe2577245c2ac683887d775d5be883611fad0c8164fc5266a248cd8aba7ce9ff5564f3ecaa18ce233950f01486f4b3b2dd029c41aae68f7dece7b598cb5e17143fdaafdd8dcbbfb3fc1cdcb7d985e4ea7119b2007ff7d401458b6394e6a982388799479f8538521bee5d541357405fc3adfb87eb36dd25993102de747b35b465fbb139c87489cf0e2d5c209ada58461659a9bbd27e223dd7c22e5c83736457db2abd41acfb507c1a695998e3f559c24d98c6fe6c1a2d26c8bb804b9077b7ee5492c0c6d95075fab52d902213b162cc21cc6ec4784ce68479e3a68e18166d5479fc5a3b988b5de4b95b4849922abe6f0bb5fa7f82765bf0be672a770f6b562335bd6776ec30e372b3da332009564e4cd2f7c79c8709c0541094c93402d0cccf13cdb70b994936571bd9664f7de4c7c95cb244e0af44561820383e28d43f4eddfb6ca59b58904433cf177af64b8ff7b5ce0e8c1ccd1140b3a49c95360daae08a66716b5e63ec7c0c41ee9c4e371751ca670eeec72d5a8f3a59c45950fd21d86ca113f7ff806b5acc75488247590c70c064ea11a627c8bfd475b6db7737c8e73aedc539332f8c90e3c651f50d592560f4c457960ab7345a57e066d8f8c42569a088adf6e54b7eece3f561b827531cee0cab06d9485da102e2922561a1ba81fc087337eedc3dbc4d9f25bdcb53a34dd98dd2bb0668a79164b05cc6b9031f1c0168d5735ab083ff0513903fd41a87b1afdad271e3594b49ea98ac8f5da950ad0784fcf926d161481e861d7c7161aadb709d0ad0814369636c8e2e8bd5b0569887f8d09b2acc11911d71e2e98ec90fb79b8b5c8844c19d5aa5f67a59d44472af414cb4f385b179f8d7c33b2214f392f52e41a9137eedc35f3fe3af8abc2608b4005120cb01da724529b273a9b56dd6f2d48a49a3b038a967fad7b85dfd1b13b72384003f99ef34f38872d192929251bdadd2ab077839b22660922952b48af303a7997b5d9e3590f08675463dbaec4f05852d4e8434e21c28a38514f73f2da389d053085c3fa2bde6701010ee45fc7c13c813621cf3c05a5ff9256153194fc608a5b5b790fcb263f80d7f19b65f9df878df4e019b72c7cbb025cdce118a65913ea0046c9338bca9c1439fc63cb2715bb27929516abe9e1d48cd986ac30b8a77172fe99a640c19cfc74825e977d467db140793adcb1bad426d81dbd90d619e3465dad048c4fe30f280cd59d1ad7add9ac1fc14437b8f0dba3a4de858055716c45ec5410f601f1736f9b65bbc15d9390bd07d5d0364acb01fc95e49ebb2d189ac25cfd0f6ef3f08c9ee9bc9ee335348ab", 0x2000, &(0x7f0000000a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000005c0)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}, 0x0, 0x0, 0x0, 0x0}) syz_mount_image$ext4(&(0x7f00000004c0)='ext2\x00', &(0x7f0000000500)='./file0\x00', 0x0, 0x0, 0x0, 0x100061, &(0x7f00000008c0)) [ 1157.850706][ T9031] loop5: detected capacity change from 0 to 1 04:26:29 executing program 2: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) [ 1157.967446][ T9031] ldm_validate_privheads(): Disk read failed. [ 1157.994906][ T9031] loop5: p2 < > p4 04:26:29 executing program 4: prlimit64(0x0, 0xe, &(0x7f0000000280)={0xd, 0xffffffffffffff81}, 0x0) r0 = getpid() sched_setattr(r0, &(0x7f0000000040)={0x38, 0x1, 0x0, 0x0, 0x5}, 0x0) seccomp$SECCOMP_SET_MODE_STRICT(0x0, 0x0, 0x0) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r3, 0x1, r1, &(0x7f0000000140)) epoll_pwait(r3, &(0x7f00000000c0)=[{}], 0xffe0, 0x200035, 0x0, 0x0) close(r2) [ 1158.013685][ T9031] loop5: partition table partially beyond EOD, truncated 04:26:29 executing program 3: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) [ 1158.058103][ T9031] loop5: p2 size 2 extends beyond EOD, truncated [ 1158.120267][ T9031] loop5: p4 size 2097152 extends beyond EOD, truncated 04:26:29 executing program 1: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:29 executing program 2: r0 = syz_init_net_socket$bt_hci(0x1f, 0x3, 0x1) setsockopt$bt_hci_HCI_FILTER(r0, 0x0, 0x2, 0xffffffffffffffff, 0x0) [ 1158.440744][T14159] usb 4-1: new high-speed USB device number 48 using dummy_hcd 04:26:29 executing program 2: r0 = syz_init_net_socket$bt_hci(0x1f, 0x3, 0x1) setsockopt$bt_hci_HCI_FILTER(r0, 0x0, 0x2, 0xffffffffffffffff, 0x0) 04:26:29 executing program 2: r0 = syz_init_net_socket$bt_hci(0x1f, 0x3, 0x1) setsockopt$bt_hci_HCI_FILTER(r0, 0x0, 0x2, 0xffffffffffffffff, 0x0) 04:26:29 executing program 1: perf_event_open(&(0x7f0000000500)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x210000000013, &(0x7f00000000c0)=0x100000001, 0x4) bind$inet(r0, &(0x7f0000000080)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(0xffffffffffffffff, 0x6, 0x16, &(0x7f00000001c0)=[@mss={0x2, 0x8}], 0x1) connect$inet(r0, &(0x7f0000000180)={0x2, 0x4e21, @local}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_OPTIONS(r0, 0x6, 0x16, &(0x7f0000000300)=[@window, @mss, @window, @sack_perm, @timestamp, @mss, @sack_perm, @sack_perm], 0x8) r1 = socket(0x11, 0x800000003, 0x0) bind(r1, &(0x7f0000000080)=@generic={0x11, "0000010000000000080044944eeba71a4976e252922cb18f6e2e2aba000000012e0b3836005404b0e0301a4ce875f2e3ff5f163ee340b7679500800000000000000101013c5811039e15775027ecce66fd792bbf0e5bf5ff1b0816f3f6db1c00010000000000000049740000000000000006ad8e5ecc326d3a09ffc2c654"}, 0x80) socket$nl_route(0x10, 0x3, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000200), 0x88) sendto$inet(r0, &(0x7f00000004c0)="34e2de4d8d957a8de4e490b6cd20b988d4edef164bd3377aa381b5f50b7ca40a516489f78cd7208982e9bde22b2b7c1c7606d565477f3db9d2b077283644c0f27ab52a863a42863e06944e40a0b3c5d21c8cbe052e7f726263f28aef1bc12a069063d4c30e8f329fdb36859be727fbef4314161e5fb5f01ae00a2634d5cdecca2089c62e32f4c919886b2b88d237e287318739bec0364caf15889f38a312ef6621c0f21709a4bf2b16274cf933f6ad8fcc9c2024bc1b4713f650e860f93ae93b2361956b3e80c38c5fd29b5c1b5d7ce67edc856a8dc0ba54cee53de9a48c131389426bd06ec7c695add357934fc0321f0d3d7982e4fe5a0039decc491a663afd02facb08dd9695f854c7b031d9af8bd7350897996b5208b23030cc0feb84570730eaf24b9f2ac05d0feb3be07a29f887095f36f3c8f0e77e45509acd14a5be4a1572dd4cd1231087b830fa03e071571d4abd694710ef140469cf6df8a59839aafe046a5bffb97e5247be901789eafd726ba090337a2c49207e6b900c7e982472e6aac70e5d52ca2c1bab47b1f6d00f9601e2281686c21f770ae96e0ffec4b30496d012fa00958f794cdbd721bd155cae87", 0x109e8, 0x805, 0x0, 0x6) r2 = socket(0x200040000000015, 0x805, 0x0) sendto$inet(r2, &(0x7f0000000340)="f27a306248ad0a54f7a1db36cdd9700dc6125283209ebdf16b44627346658c61602cd398458cc580581dfb9fc43549f71bb2b103ca05a32184add66306d2951f5396c8920c9ce67b7c3ee0e79bce77a88edce31fc353229bab435f9ddabf315fb7efac0a3aee729c70f06a", 0x6b, 0x24064055, &(0x7f0000000040)={0x2, 0x4e24, @multicast2}, 0x10) 04:26:29 executing program 0: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000042c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) unlink(&(0x7f0000000000)='./file0/file0\x00') read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x21}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000008a40)="e74a0f89e88c3aba2d1c776ab25b221b366ab0ac5db05ec87f720b51be2b46fe1aa4d1f50e8d278e8e9641885de16dd0ab77530a7a8c79b801a4c8c9567e29f0fa2752524cd11497506cf97d82f723a251df277d637259d2bb510d2b02d10e860a1edc040eee393f7888f1d66d3a473cb767afa655e1b44ccbec58fb5c93aace8c0b871aa42975bf03e7e187400662d6904e49dee4e2af4c6102ecc3f0337be6784bc4a2a31309934f6f5d25877efe0ed45a3aa006d101d91f9b2afc4f5e481a8421c4c734722ef89ca7f9b44bed7000782cfdb5a200c3a1e9a277a9655f28767a39f9e495dec1e1bb617037b6058df1ac7127ab3150232370a5f2dc482f007ff59665fcbc5eadb27cfc85ffaf1c6da0fc2bcd45e04c038a09526be1689e06771f18a2cdc8e66741fedc0648170210d1980db4781b1ac2968a88df1283eac5f941c56fb5c9fb9dfd9b97abf16d382f346b777f92d9a0342099617e1f6be516d856dcec566100be918c31b31bae1201408197c93352cfa7b68d8ff995bfaef9a1557a00f9c411e5b82818f96f53608cb486d134bcd8ac55cd0e9979c9427abe385dfd50b4096764a7d2b3fbb3bbebd826af4abb97bb0fa75214a5c2a684239686c0bda28d382dab3f293d85ba35edd9e2f22eadf3733944267001e596b8bd36e308dc58d64df4a54779febedaeece93767debfd371bb76a2b9961d007fcb4fa607f1d03ed4ec8a50ed7abe639784569d11787b4e145caceec20145d2ae15b9fd9790589dd2a3612247c6edceb22c7a790d10944acd16050ad6e3de7a4aae0b1c4fd0dbdb8bb70946abf2c95e7e1a6c46d46d98a483edb5e02b7a83dbe8f0608167e7a01671f135b613c11cb307b8e004d4306884907bfc83e0397827146f5101ce5528dd7c07a5d364dcf1857772d7ea518a9847a853ec9e75df1e14fee7c5087dcd923808ded43a63a0716fcc0661c1018847bb327633a1ff9e0dffe85c971e2458b4eca86f44e20db067b30e1cc5f4eed7064f76fec7a772b8239e24de0bc65ed7a48521ce8f9470e5289259c1a93c63251ba3cb9fd40074a66c2ae0d6ab50bc1428ea14a254aba9bf6875885fac3cebababe0abe4fa2c4aa02a83698c15fedf2dc4fe85474c26a9419c8a818515c170576ba2bdeedd7fcc6f318414a4a3d21c9cbeeda8a93420b0edf749ea937d15e3624b9ee08de930510b108de17e126ba03acd647a7ec8ddafe3ca8eddafda604424cc0e1b3229e64b3a8f334cf81062066e6d451306e00c61b0ae09a7457c7a9299acba8f28210e8bf2de29c413c27c06a885f4d76223b657e08e24e881db1bcfe5b6bfd21c10ddd08b82782e1d63f72ec05dadcb3e6f4c651acfb8e108609f37a0ebfa1992eabdbb0d59c3bdfdb6db5c8ee69280855a5a28f25f18c43da954337213621ff72b607e1881bcca05b53f1c48206c4a41ea513bb45197e9ae69064557dda4ab0f2785f5f5e9d0c7b1c81838c5d48f6376a8fcc0230bdde2471a3521ba0cfc222989b336c7aaf81664e3465f45d4d0820833451fa85ce0610dec0bb0dc7020a91f5bfdb6ddee67152a497507c391207b7aeed6bb1f6eb812380b33e42b78d1c1175d9aeef5c67894879d6200acb2aea17c5461bd2909315fb7611d72aaa92a5b1801b6f0402ae8a7a251bc5b7e652861886edcf155515c34306a96e9af5d19d29d425f30dbcc7715490343036ffc28b117c234aefd3e9a210e2248379754ee19c7b24f75ed41e418321a2ee4607e6801bf764f9aac82c13685d81865e4c68ee67d23c02937074e0099461711c5ba2c40f4218f00ff884db32bd6b6c753f352d27de3e9ef39a449f470cc9d5f0a347603ffe125365db8f7ed8db6a6ff3f054b7e3b1e1ba4e3b120abee0d791cd64f3ecab1be0a985f5a04c9bf91566b6af9a0705618a7eb7bd34dc71c6e982fe9c684d2fdcaf5ad1f4366c6b1573520b3a43d1575973976e5a2d8342836da61a919fe291d4e06dc8b8047fdaa591db96c5f708d7efc10d0febd2de603998daa218841c38f38c294f79a058c14b8451e970d45b64ab8cfd811e332ca469c1ad1a703c7889b6af2430b5a9a16efb95767cf6e176aeafe1d7f3e207b92316038a694dc77e4f9d423f023e6e92994bcacc8811afd8022cdf24268c646e4f8f1eec0ebd9adf11a338bb0b76bffdfdba5060cd8858c3861c2020a8367b65b272305871501ce9131ba58f4bee28542651ff43e4b044e08eebdac22901166e5a4690335d5c195d0d895470df40c756e553230fb20485f25e6122c131a1c240a8eeeadae8bd743e25aa7445c4d13bcfc2012a3fffd8e71840a73b0fb86e01b189ed98ffaf53317a3be72575c72b3851f5e6d58946ea53c27a2c074de878396bce0f0a8639e4cd188b0c41bc93ddf2e2bc21f4a6a2a5231612f7cefa0735eaf3fc599c018bfb788b0951173df46c9f57ac58a70364a78d4eed63659e80983ff21b441ba041a6e0f83cf5cbb46787f8032f35ee2d35fbf278ff6b0c4742b0c8e9b8b51081b3db97c75feffcf4793b50a774f9fdb8e1df5bc3b337964677d2e7148e31ea866090136940a9670ff492d88b48d7f5a9cebf32b865381303636930ac76c940454bca3060d8f3e4858b55147eccdbcdef80c64b8030498ce8e15420d1ea46c5406a55c89434765232bab57df4fd145a60191eea9b1d634968e0087083db8bd71be34739261753fba1eb47edda8df45c8bef040b152b1da174b1da36f731cd77a3ed39d6ffdd5bd68d4288c4d464e476c136d3ebd379168bf87ac8ba63a8a6a3f2430af352f2c252a0ef3ea2560870aba83ccecdd0e57ce9859821f0e1da1afec294048a1e22cdd02d5685181998ad20b26539aeb8e8fe02da9f3965583cc8109146ba182b6c8c945bc0e3098a353d07f9f28737fc73ecec7d12ac68f51135a617291d57e57a625bc7fc2174560f24a7667d4106c11922815af1fc4bfca24b625ff6953d8255a7771542d2fccaf74195c957faa3328cb7180b12efc3640eeac8dbac1aa55d236904975ea0521d8b3aa792c8c3194eb15497fb68351b2f662e6dcbb03607feb7c2f29456085d96d4dbcfbbcb2828c812f21624a301b648201d27b9e80862189e7f8e81b479301b4a55dc2aa7732b3460001d072f04c96dc34fbe5f7eaa12107dee5c4fcab6977d65d3e5a3cb2b2334fa2ed10a0ff0f02b43a16f5bfb6d4909b70af2b1b1d072e5c8b0a344ade8c7044a2a1ab9a58ff0e629a2345a9633513ac429ba96b8911c227a306fb23769d02b233b869c91abd605e4d13e92f56b13414e8b29e1e9b203154db9380bbfb66c4548df00dc5f3b13909b2bc4e90d5e3a42b6e4d6e8e1eaff7b319179975ae90e3ded62efbac60abbb57f07c348a4eec2032289ac91476297385e0ba3a9bb08de5894baaf7c6a46b4e04e75c10722dc2c5af819638b8d41c163065cd73b8be3ef6c36cbc556fe87b4d35f14211a86fb8800bcf677a17ab8808224ed0ca780338893612a686fd6d44a1b621096477f6f0760abb232d7bdacf9c7811eb0d87d69452f74c7563c583a3972083cefc8ea05513b87f6d0bc52fcca7d1fa02d5f5f06837526597ea38be7c7a4b33f53917e84e7a46021b85d416a6455cba0646a2e8106ca515022355e72f5c5c81d23b2bc2abcc3ed75db75da3301df758f797a61c33bf8bd3711c202da94de304b7ccd1049d58e13190d56627755ab3ebcdd2922bc162240b9be762247423b434122bf5173147ac981beaf9dcf95f0f28601b5d0dcea36ef0f06be3eaf57a86e0523cdc712ed58bbf081ab9ddf9cc404f6dc3e48299d457c79735587d83d64af69bbcdd1c9654514aee10728fb51ac14f5de78152a2e15b7d40189903e1c8f6decc9b9c22590acfc66c2c61028f2d55609a25e0a99beb9b542ad9b0cd8dc60f5eeea600e8567fdf1675bad45b6d10d4ed8f8bbf012ce632d9d1b73be0944eb9b475a1567c21e22f5b5db331cbc0312fa9069fa04aab947a57d28e7620ad728a589ffe214409284b9ae9fecebf5ef5a99aec1efdde05eb7f2bf80ea66cb5f4580e5eb75e8aaccf203b0e8c29275c05c8ed39029b5d74e20b92dd2b2e6525e7e4e7216735d74f7db4cfb4f76083f69bd6cb2f45a29229e38b54f1e4f5a73d579c23119f720e31d39c119f0f07141c4a461a710e28333583538bbcce0e6b06f38efc9dfe99c826c54295362553f87536ef5280016b7df0652a70368a712e3b0d1b3d73d8266d82d519e636548ec28767b9b109584c2a07e2566abe32d0cc509414b1711c53a37f3b7d218ce3bddcd3ce3bdcc2a7544fdf19ec9b6bd5a35fa8a30226ff37fb679138a5aa53f952b3f8b68d9a7eeda49f055804d5d25b10867d8652290d7e96a0c0a64fad854e6935cd1594655617d4c5a70074b0febf8272468f8968876acf52f1be6adc27bd3e730487fe5ae444b7b6c20f24c825474a95a1a739be1650ead9c7cae41718b131d4aa8291fb2dc45f5633f482b6e31aee9fd0432da9065b084e5e58cad91c5f9835c524b093cac7bba5cdcdb70d2dbf3ca0520f5f0dd74212c58c26b4e45122e583b5caef4ccf202a6b3a5ad0de8c9859c82c397b018e7528acb59cfd465b30577a8d4a358b58d0d5e510e1c61a522a4f843d0e580bedd5d97aff93915e756800ca9890e37275659efd87c6f31466e56141a32ec4c789afb3fa942064caabee55587a69f2600e708a9e58eca5f5c2ed0d348cef955a261b0ffda9c51e70f2335dafa3c2e6fc5efe28229c5bfa7a87361bf6fbdc74731b67003b457616ea7bd30aff832b7d18f4367bec3934983c9363adc2b1ce3c63fc4ac0d9a8e15a727b57131ac6d140305dc69b866e4212c6a58ee1ef5734db31e95f08688e8f8f6cb5b1ca4d9579ee09b7f4391e39dd84b2e7b2bc4e3a1d330f4b29426864ee08b59956d688a61aec981062af97b797b9921f8f881b7baaa200b4050769d8ff1a95d5fd1c4063f2f4aa472117429040f1ff2b50e794c2197d472adaef17c8ad035529593e6bde8318d90a16190efe531f4e1c83d317ce279d71711f3dc5b2ca6c2939caedd688927144c8f51da45fcea09b551d1c906585a7663834ee0d6372d2ec5a41af84ac3690aeb2723517dff02fcca3d30fbe33c8845808b2a1975e098d875e4512ffc527a9372a6fa6df55220182c02f22b39295526c40efae0d14eeeeec35e617a6894f58bb51a0d9c621bdc72ccd8bdd8091290a5dbef4675c3cbdff98050eb4bf04eb9a2159ce14bf68f3408e2c482410dd1ee2657477573acca4b9ac702625c0d628682753f2e0146799a62dfce3ec882fefd902e8fb4c67529baec2434154329e1d95dfc5136b3b6e6ba60da0b48cfc9391ac0b055f7f75ab5b2a0e5eb396acb972bd380ed670ace57fba31145609806b2d90e02b2ceba535b3477071021788e2ad746ca1ab7a682093a8e8b183830a0ff3a40fc9f191d3415d050bdbbc9799ea9b1100471e29feff398d251699d5ec8304328e748bfd34ab714ea534a49da85f173af9bda7a0296e511df46cbf86b61e89ef22e6de5a3b0fb9fcbd7115879d1d84f560dccb7e06f9cad4a1c9332aa4861ea97ed6619e839b302eb9602b2b81537815594bd71703b8272876de20f5b08b796eb5985a095a357fedbc513737b74c4a37d6abf063807f54e14d001de8e78f129c646214dc88f5c21c2185000eb359702036d97481bab9756244413530bb67794f8f2edd7be9caedc86bcf6af2127671ab63ff4e6db943200e01b10b01c0b9fc81f851513ee59afe255387fadebfab57b5a152cab4933cef455700091d832384ae3871a91553574b297ed5ddd3f70d04adeb30e1342214435c305cb34159a357d23bdb2635e2abf29ea68e44f5a47f9bdd4c949d9aeb87cabf6b3917cc6bcfec88bc18fb6d62f3ca7a57bf4a960f589fdeb827f482b9f9b05541da8db5ed22b4fb3da5bad8e179dcb72ef378b7c6db26bd5bf10b797e73cb0cc29c7fd96f49d7d01e1bed6e750d35ae86bbe120bae824a089153f395e8c4702adeb83eada5c9ea678c649fd886f5e41173327c47236e7ddee054bdafe36bcfee9ad62909fdc53cddf2b40d0be68a91d774305e4359701aaa95d438cd4dd0b7bf4a3e38bcf3158e71feb46793a5e0cdc8e27e6dbd7f92213d5fb3165a68f411c224774730e9f745a9eacaf32173eebb198a8643bbb90c954734bdcd473bf0d48ca3362ca6788a90fa34aa056ef8d3e41aae3f3500adc509fe1025bc31b526623a30c97d550c2008bf8798042c0aedf3b306d4090af1944592a5793539df69cb33beb42549602fc9f98a9b9d7d4170ebc210e6217908833c5325bcfb9c82b0701cdb8c9653adb1da531e7ee4024efc26041772a28287684d19db5cc16ccc62b2a1b4642a73f44c75797677f6a490888f473c36310f85f51ff83443450f75333f00a4a5ddc4a90d066a44fa3cf763e65765f14d8e3e417f1bd19a6424488e5912ffb9848b66faf05b732f3569dc254cab7dd2bebaac809693f83005ed6e89f3f49ecac10de6aea859675ead7ca6b68ab62a1324627dc7ebfab24132e59eb9c912ff2cde91fa324d0488350b7b6af6187690835258540e9341d0ee1a8699a1f9b4002a5e5c419f75e58f13231415e0987c9bb9deb4780a887a1eeb33e138fbfe4363b397ac3c433b77ccac37ce6bad9101b9919bf3951aaa0e7c079edebfc17633f18d44fbbbaf85a6f906881b265bab9ad8012be7dd4d6a86a49df72d9d7efaf2d99593395e8150f40ea89232f0a974072e965dc420fdf138f7f8bea3963f95dcacef1894033bd5a9f954e1d25cad40a62f382f224b7714e3c57bfc91233314b3802deee382dbbf80fc90714c741ce9417dbecb9039e945f8edc623ca52a095768935106b60756bfe1f5dd0de74636d0467d1460830542b8639bc1c5c6012857950003c2e604204c8ed674e3ecb284aa087308b21ea6b4df7995c6ed8c93aadd7c1cfbb0f4c6a9c043f8556ae2b796ec1977f981cdbd4c1b24543297e7c0af25aa012010e9e6f503264e8df555426b617ceeaf7536548d983ab897a7e0a5c821ea4efbe426c20aaa542270d0dd692a590e230c244a881b883b61ec3bad14dbee6cba17f81f4fd56290d3ca124378a72adf8ad9f9e2af3c6e29987decb125a74a7c6e2bba7244fc7ebc393963be4062a57ec9210919d867729ceb64f7d540d1d5d82bcce83cffc526801435ffee0205a18caf3cf716aeb28d85c5951dd18d7cf8bf5e1e83f84865ebf6e65bdc75ada2fddb2c06620f15595633263a2e053a8a36ea80cae0ab13e5a96cb34f813bf466aeb6a9e8f7b70df5ed563518b96cd253a4a590bbcf21cdbc7c027cec64afd15e52aa97f8a6890e2fd95354572c4371f6e0d8b588c7ecb832d2911f2bfd03407c01d6dc5757ed68a6a037397cd7d0e1d39b644ac7bf286b34c61b8b605e47522d212a1f7471251ff627a935daea7aed047a6bb418c03e41e674897da32d99b69c959a0a956f78b7c787415401eda1f35ced661905adbe1666a928fd1564979a35b2d3962d551c1ce5d44f3627155fc5b3a1be4318ecc41222c712f56d276d800a8f65eada3acd03982f705f970fc7ddb1233ae5e2c2ef2bbdf3780ee8b42878ddffd2152a6083c75bf55b72d095407efb7dccdca556a5bc6ff8fb71335ff8d944ed3a7d82ff982c6212011c7c61c47d4faeb18598111572f605b66d49d00b3b666b808259bf6db62d3b4874a9819ea938c6f60baebeadefce11df20523e628a524d6ded161bdd2f60a67e52e4f20e2b980111daaf4d6c1db53576ac1d599a659bec0e6cfcd665dd3abe6be278ecf1e22f994e25d07937cee04a1ffe90bd9201d91de25535d67d7a5d1ac8bc058afe38dc46a6ca2b7f467dcaedc5cf4957200d64d9cc058e3bf24bae9151c0a4f60a5fbc2ff1df7a442726b73a06b007048e8a2ec1c4ca775374efaa6e38ff210a3c397e67398dd2e97aa26639034a71da887f0880be14dfc5721b99d79bf5fba9d9cfc35a5dfddf9ca58036083e94e68ed5b3147a46edd5cf2f1d3efcd460790890caaf1d08f765bfef6d42e226370c6a63ca1ecc4dee7caecfd8008bcb4b7b2b6d782415c9af164207d3a21421a4412f2f31a703f30c7dadc40735f138195e6778ecc13cce38cdc13fb2d8dd59bdd420e674ca4eaafac2565b61fb1b6a8f658a3bfe1a318cca3c2ea412494d3b484718ce4044da3136cc597767a8339e772ae43f98f2a1d36b1d228eb05cfe29f4b908cb7a3aa322fe2208e7ed1df22732a72a4903a8c91483c4a6a73711ca2cb22eec483780e63f76509f642d4e607fd19a71e182f49a75dd8ab5a55b5423ebdc2cbab0d8df1871ceed5ba14229a79d152813ddd55c7ea9b3b29debd8b4b2d4a15a83441f82a6e07b52fba99b64753e55aa36549954d2bd5fdaa9e151e441f23187d698ab4a0507e32222b3779cb341cd46d43814fd59b230b16bda7dcb789ab3ffa3a43b68063ae40f9a1953c90d96f239819e2abf63d0a853135a23f031726b794730bdd9fbaa512865fd91d4d9e9c61fa89e36137bc4331be7c94167a178b46f60c5a2599ab3d68999d4c14d91b1d4d9d5c1f7174ad5dfe57a3945898753f0a58d6e81d6508ee986ea41ff56cb410ee6b734637b4c8dd24b8e269d1294ae449c418fd4ffb736115a2a83d1e57daca5af10de77d0cf0c1fef985e44676e6f108f3c83caa0d6efbbb4083ff2662cdfe1672af39d2f75d29d4e33c97c3fef76e66c582142af188427ffb4d99a7a1683799764e2f03f84765acf8a1260d56b35355a38b0835b299d34b34f998bc01d41133bc41017128392dadcacc529b09ffdc397cf4340a5ab7e81f623776455576e866dd9736795c5f40a80b52a4f5c07927d811f34b2a4f651b66772209920c491fb740a11dfdae2e3000107c33083fb10f6208372acf2516a40e1dbbfc9dd32fcf3dfcce8e9c81349ca28817d86e56f3603040917690b0a47438d29817f36b190a2581e7a3fcea4895cbab6ad2acca089252fdd2bfea22637502896e011a88d2403ded83f9a067c8172300e3cdd1f10c5f3be6d5123521205d86966f00677f5d589f4cec5766c74420cde42b88ce0901188fa32952e404273f4a62610e77e57222e00a56bda0bc39c48de96fbfb54a6d8a255ef9c73d67efac6fa23a760c1553cdfb74bcbb51dd0f727ea58aaedbfabf96dddfc9cef2f844270268deeeed15da525e775a49fbf5f6f312fe20c3c272a08c919a1f8f60e763156f63a508ec49a5d4ca3d5a8999552562c6058d404db130619d21cb56be4d2c60532c48f5ff3d5c867ca68a86006b4922bacbc598b4267f6fc97840850fff307496441e546847c617f94a223c6dcdba2aa66e7dd71a0b92d09f988dc442b78f5b1b2a84871f4b66698cdce033f7a76595337f1e857c311318374947a9934ca531b1c14df7a6ed0f59fc97064686e37e1fb42a2ac898ddbf68b1763409bd6fb6dc8f720321f5831aef8402e96106ace14bf82ccc3337c1c9bce7f908a5b8141d4f6636278d179014c77b334577d42d28eea6f48680edf2065cc0c3b066c8c0d9cbb301a5b010a8f9d6098c189cc54f22180a3fffa2ede4834117e18b853a833876ee6097c7642aa93a03e0ca2387a84d0f0d1189b35e9f9dfb775646903b33297097bf9d494221c3641dde223c7ef77bd92b1f7ee4feff19950371da95e0b7536985f2410aee2b0ee64c60aeb9e16e40d980e8e91314e16f9e28ed964d8bd2e821a1c9770fe4632a4a1141b68b7270e7906b975e8dc7d15ac972c306b0590d4c73b2ef7cbb58ab00511505d8e32bc7e848bac899bb4e9a4d40998e0e96f72b57b7fa4c421e33b2e8e5e9991931f306048287fa44b0ebfd156cec56c2d4836a21e4d5662ee6bb0a0206a96af3a80d802b414f4903f97f23ef4fae51457b98f48baf8415f5ee004a4ba6a8ad1b162e0de1a6afdf8a73ba12c1897933dffca1ed8f6c7b6c4d76885f07634c6e9e2c427447c5605d1f4c11d1b5cf98fda7078b7755bcb2478796c8b26d986f3411986d4ba6a716216d794301b8a143e7ad1534c31f7e41090d6cf9d952780d5ebad58ad7aa6667a5b6037c8eb7a0806cef0fa14484af3c26f1d55cb9b53adc83762fa3b135af262f09c4c115c5c86cdc9775d89fd13abcb48c5eca2357d76ffc4a061ba230073e788730e1d81acac9558ae7e35b3c7f8cd81c010215b1468abcca7c64b155fe2577245c2ac683887d775d5be883611fad0c8164fc5266a248cd8aba7ce9ff5564f3ecaa18ce233950f01486f4b3b2dd029c41aae68f7dece7b598cb5e17143fdaafdd8dcbbfb3fc1cdcb7d985e4ea7119b2007ff7d401458b6394e6a982388799479f8538521bee5d541357405fc3adfb87eb36dd25993102de747b35b465fbb139c87489cf0e2d5c209ada58461659a9bbd27e223dd7c22e5c83736457db2abd41acfb507c1a695998e3f559c24d98c6fe6c1a2d26c8bb804b9077b7ee5492c0c6d95075fab52d902213b162cc21cc6ec4784ce68479e3a68e18166d5479fc5a3b988b5de4b95b4849922abe6f0bb5fa7f82765bf0be672a770f6b562335bd6776ec30e372b3da332009564e4cd2f7c79c8709c0541094c93402d0cccf13cdb70b994936571bd9664f7de4c7c95cb244e0af44561820383e28d43f4eddfb6ca59b58904433cf177af64b8ff7b5ce0e8c1ccd1140b3a49c95360daae08a66716b5e63ec7c0c41ee9c4e371751ca670eeec72d5a8f3a59c45950fd21d86ca113f7ff806b5acc75488247590c70c064ea11a627c8bfd475b6db7737c8e73aedc539332f8c90e3c651f50d592560f4c457960ab7345a57e066d8f8c42569a088adf6e54b7eece3f561b827531cee0cab06d9485da102e2922561a1ba81fc087337eedc3dbc4d9f25bdcb53a34dd98dd2bb0668a79164b05cc6b9031f1c0168d5735ab083ff0513903fd41a87b1afdad271e3594b49ea98ac8f5da950ad0784fcf926d161481e861d7c7161aadb709d0ad0814369636c8e2e8bd5b0569887f8d09b2acc11911d71e2e98ec90fb79b8b5c8844c19d5aa5f67a59d44472af414cb4f385b179f8d7c33b2214f392f52e41a9137eedc35f3fe3af8abc2608b4005120cb01da724529b273a9b56dd6f2d48a49a3b038a967fad7b85dfd1b13b72384003f99ef34f38872d192929251bdadd2ab077839b22660922952b48af303a7997b5d9e3590f08675463dbaec4f05852d4e8434e21c28a38514f73f2da389d053085c3fa2bde6701010ee45fc7c13c813621cf3c05a5ff9256153194fc608a5b5b790fcb263f80d7f19b65f9df878df4e019b72c7cbb025cdce118a65913ea0046c9338bca9c1439fc63cb2715bb27929516abe9e1d48cd986ac30b8a77172fe99a640c19cfc74825e977d467db140793adcb1bad426d81dbd90d619e3465dad048c4fe30f280cd59d1ad7add9ac1fc14437b8f0dba3a4de858055716c45ec5410f601f1736f9b65bbc15d9390bd07d5d0364acb01fc95e49ebb2d189ac25cfd0f6ef3f08c9ee9bc9ee335348ab", 0x2000, &(0x7f0000000a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000005c0)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}, 0x0, 0x0, 0x0, 0x0}) syz_mount_image$ext4(&(0x7f00000004c0)='ext2\x00', &(0x7f0000000500)='./file0\x00', 0x0, 0x0, 0x0, 0x100061, &(0x7f00000008c0)) [ 1158.690824][T14159] usb 4-1: Using ep0 maxpacket: 16 04:26:29 executing program 2: r0 = syz_init_net_socket$bt_hci(0x1f, 0x3, 0x1) setsockopt$bt_hci_HCI_FILTER(r0, 0x0, 0x2, 0xffffffffffffffff, 0x0) [ 1158.810911][T14159] usb 4-1: config 0 interface 0 altsetting 0 bulk endpoint 0x8A has invalid maxpacket 8 [ 1158.838530][T14159] usb 4-1: config 0 interface 0 altsetting 0 endpoint 0x2 has invalid wMaxPacketSize 0 [ 1158.861306][T14159] usb 4-1: config 0 interface 0 altsetting 0 bulk endpoint 0x2 has invalid maxpacket 0 [ 1159.009849][T14159] usb 4-1: New USB device found, idVendor=0436, idProduct=0005, bcdDevice= 1.00 [ 1159.040820][T14159] usb 4-1: New USB device strings: Mfr=2, Product=0, SerialNumber=3 [ 1159.049249][T14159] usb 4-1: Manufacturer: syz [ 1159.055733][T14159] usb 4-1: SerialNumber: syz [ 1159.065253][T14159] usb 4-1: config 0 descriptor?? [ 1159.101789][T14159] ums-sddr09 4-1:0.0: USB Mass Storage device detected [ 1159.166880][T14159] scsi host1: usb-storage 4-1:0.0 [ 1159.342292][ T9031] loop5: detected capacity change from 0 to 264192 [ 1159.495510][ T9031] syz-executor.5: vmalloc error: size 4096, page order 0, failed to allocate pages, mode:0xdc0(GFP_KERNEL|__GFP_ZERO), nodemask=(null),cpuset=/,mems_allowed=0-1 [ 1159.541834][ T9031] CPU: 0 PID: 9031 Comm: syz-executor.5 Not tainted 5.16.0-rc1-syzkaller #0 [ 1159.550646][ T9031] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 1159.560813][ T9031] Call Trace: [ 1159.564093][ T9031] [ 1159.567022][ T9031] dump_stack_lvl+0xcd/0x134 [ 1159.571647][ T9031] warn_alloc.cold+0x87/0x17a [ 1159.576339][ T9031] ? zone_watermark_ok_safe+0x290/0x290 [ 1159.581891][ T9031] ? __kmalloc_node+0x62/0x390 [ 1159.586694][ T9031] ? __vmalloc_node_range+0x574/0xab0 [ 1159.592079][ T9031] __vmalloc_node_range+0x883/0xab0 [ 1159.597301][ T9031] ? vfree_atomic+0xe0/0xe0 [ 1159.601849][ T9031] ? bdev_disk_changed+0x462/0x1100 [ 1159.607060][ T9031] vzalloc+0x67/0x80 [ 1159.610985][ T9031] ? bdev_disk_changed+0x462/0x1100 [ 1159.616280][ T9031] bdev_disk_changed+0x462/0x1100 [ 1159.621304][ T9031] ? _raw_spin_unlock_irqrestore+0x50/0x70 [ 1159.627112][ T9031] loop_reread_partitions+0x68/0xd0 [ 1159.632417][ T9031] loop_set_status+0x395/0x930 [ 1159.637303][ T9031] ? __sanitizer_cov_trace_const_cmp8+0x1d/0x70 [ 1159.643552][ T9031] lo_ioctl+0x4d5/0x17c0 [ 1159.647793][ T9031] ? find_held_lock+0x2d/0x110 [ 1159.652636][ T9031] ? loop_set_status_old+0x1b0/0x1b0 [ 1159.657944][ T9031] ? do_vfs_ioctl+0xd7/0x15d0 [ 1159.662625][ T9031] ? check_kcov_mode+0x14/0x40 [ 1159.667497][ T9031] ? __sanitizer_cov_trace_switch+0x63/0xf0 [ 1159.673472][ T9031] ? __sanitizer_cov_trace_const_cmp2+0x22/0x80 [ 1159.679796][ T9031] ? do_vfs_ioctl+0x132/0x15d0 [ 1159.684612][ T9031] ? __sanitizer_cov_trace_switch+0x63/0xf0 [ 1159.690526][ T9031] ? blkdev_common_ioctl+0x123/0x1910 [ 1159.696004][ T9031] ? blk_ioctl_discard+0x330/0x330 [ 1159.701128][ T9031] ? lock_downgrade+0x6e0/0x6e0 [ 1159.705980][ T9031] ? loop_set_status_old+0x1b0/0x1b0 [ 1159.711261][ T9031] blkdev_ioctl+0x37a/0x800 [ 1159.715755][ T9031] ? blkdev_common_ioctl+0x1910/0x1910 [ 1159.721207][ T9031] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1159.727446][ T9031] ? blkdev_common_ioctl+0x1910/0x1910 [ 1159.732901][ T9031] __x64_sys_ioctl+0x193/0x200 [ 1159.737664][ T9031] do_syscall_64+0x35/0xb0 [ 1159.742089][ T9031] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 1159.748078][ T9031] RIP: 0033:0x7f7cd8ead8a7 [ 1159.752599][ T9031] Code: 3c 1c 48 f7 d8 49 39 c4 72 b8 e8 04 54 02 00 85 c0 78 bd 48 83 c4 08 4c 89 e0 5b 41 5c c3 0f 1f 44 00 00 b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 [ 1159.772308][ T9031] RSP: 002b:00007f7cd6422ef8 EFLAGS: 00000202 ORIG_RAX: 0000000000000010 [ 1159.780738][ T9031] RAX: ffffffffffffffda RBX: 00007f7cd6422f40 RCX: 00007f7cd8ead8a7 [ 1159.788700][ T9031] RDX: 00007f7cd6423050 RSI: 0000000000004c04 RDI: 0000000000000008 [ 1159.796663][ T9031] RBP: 00007f7cd8f07f6d R08: 0000000000000000 R09: 0000000000000000 [ 1159.804626][ T9031] R10: 0000000000000000 R11: 0000000000000202 R12: 00007f7cd6423050 [ 1159.812605][ T9031] R13: 00007ffc3e49242f R14: 00007f7cd6423300 R15: 0000000000022000 [ 1159.820583][ T9031] [ 1159.865596][ T9031] Mem-Info: [ 1159.868879][ T9031] active_anon:34 inactive_anon:192956 isolated_anon:0 [ 1159.868879][ T9031] active_file:5463 inactive_file:52395 isolated_file:0 [ 1159.868879][ T9031] unevictable:777 dirty:482 writeback:0 [ 1159.868879][ T9031] slab_reclaimable:21341 slab_unreclaimable:118932 [ 1159.868879][ T9031] mapped:65450 shmem:9426 pagetables:8822 bounce:0 [ 1159.868879][ T9031] kernel_misc_reclaimable:0 [ 1159.868879][ T9031] free:1147244 free_pcp:14526 free_cma:0 [ 1159.914723][ T9031] Node 0 active_anon:136kB inactive_anon:770880kB active_file:21852kB inactive_file:209576kB unevictable:1572kB isolated(anon):0kB isolated(file):0kB mapped:261800kB dirty:1928kB writeback:0kB shmem:35252kB shmem_thp: 0kB shmem_pmdmapped: 0kB anon_thp: 532480kB writeback_tmp:0kB kernel_stack:18740kB pagetables:35184kB all_unreclaimable? yes [ 1159.962227][ T9031] Node 1 active_anon:0kB inactive_anon:944kB active_file:0kB inactive_file:4kB unevictable:1536kB isolated(anon):0kB isolated(file):0kB mapped:0kB dirty:0kB writeback:0kB shmem:2452kB shmem_thp: 0kB shmem_pmdmapped: 0kB anon_thp: 0kB writeback_tmp:0kB kernel_stack:16kB pagetables:4kB all_unreclaimable? no [ 1159.992663][ T9031] Node 0 DMA free:15080kB boost:0kB min:200kB low:248kB high:296kB reserved_highatomic:0KB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:15992kB managed:15360kB mlocked:0kB bounce:0kB free_pcp:172kB local_pcp:84kB free_cma:0kB [ 1160.027174][ T9031] lowmem_reserve[]: 0 2645 2645 2645 2645 [ 1160.033366][ T9031] Node 0 DMA32 free:644068kB boost:34816kB min:70492kB low:79408kB high:88324kB reserved_highatomic:0KB active_anon:136kB inactive_anon:770880kB active_file:21852kB inactive_file:209576kB unevictable:1572kB writepending:1928kB present:3129332kB managed:2716764kB mlocked:0kB bounce:0kB free_pcp:34632kB local_pcp:12632kB free_cma:0kB [ 1160.074447][ T9031] lowmem_reserve[]: 0 0 0 0 0 [ 1160.079582][ T9031] Node 0 Normal free:0kB boost:0kB min:4kB low:4kB high:4kB reserved_highatomic:0KB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:1048576kB managed:400kB mlocked:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB [ 1160.114608][ T9031] lowmem_reserve[]: 0 0 0 0 0 [ 1160.119817][ T9031] Node 1 Normal free:3929880kB boost:0kB min:54224kB low:67780kB high:81336kB reserved_highatomic:0KB active_anon:0kB inactive_anon:944kB active_file:0kB inactive_file:4kB unevictable:1536kB writepending:0kB present:4194304kB managed:4117620kB mlocked:0kB bounce:0kB free_pcp:23632kB local_pcp:6024kB free_cma:0kB [ 1160.153018][ T9031] lowmem_reserve[]: 0 0 0 0 0 [ 1160.159323][ T9031] Node 0 DMA: 10*4kB (U) 12*8kB (U) 8*16kB (U) 13*32kB (UE) 7*64kB (UE) 5*128kB (UE) 4*256kB (UE) 4*512kB (UE) 2*1024kB (UE) 2*2048kB (ME) 1*4096kB (M) = 15080kB [ 1160.176568][ T9031] Node 0 DMA32: 6011*4kB (UME) 4071*8kB (UM) 2388*16kB (UME) 1432*32kB (UME) 644*64kB (UME) 253*128kB (UME) 111*256kB (UME) 56*512kB (UM) 38*1024kB (UM) 57*2048kB (UME) 53*4096kB (M) = 644068kB [ 1160.197608][ T9031] Node 0 Normal: 0*4kB 0*8kB 0*16kB 0*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 0kB [ 1160.210230][ T9031] Node 1 Normal: 538*4kB (UME) 366*8kB (UME) 280*16kB (UME) 404*32kB (UME) 297*64kB (UME) 150*128kB (UME) 86*256kB (UME) 22*512kB (UM) 10*1024kB (UM) 4*2048kB (UME) 932*4096kB (UM) = 3929880kB [ 1160.234806][ T9031] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=1048576kB [ 1160.247797][ T9031] Node 0 hugepages_total=6 hugepages_free=2 hugepages_surp=4 hugepages_size=2048kB [ 1160.257379][ T9031] Node 1 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=1048576kB [ 1160.267522][ T9031] Node 1 hugepages_total=2 hugepages_free=2 hugepages_surp=0 hugepages_size=2048kB [ 1160.277081][ T9031] 19531 total pagecache pages [ 1160.284257][ T9031] 0 pages in swap cache [ 1160.288443][ T9031] Swap cache stats: add 0, delete 0, find 0/0 [ 1160.295457][ T9031] Free swap = 0kB [ 1160.299168][ T9031] Total swap = 0kB [ 1160.309542][ T9031] 2097051 pages RAM [ 1160.313927][ T9031] 0 pages HighMem/MovableOnly [ 1160.318602][ T9031] 384515 pages reserved 04:26:31 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) 04:26:31 executing program 4: prlimit64(0x0, 0xe, &(0x7f0000000280)={0xd, 0xffffffffffffff81}, 0x0) r0 = getpid() sched_setattr(r0, &(0x7f0000000040)={0x38, 0x1, 0x0, 0x0, 0x5}, 0x0) seccomp$SECCOMP_SET_MODE_STRICT(0x0, 0x0, 0x0) pipe(&(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) r3 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r3, 0x1, r1, &(0x7f0000000140)) epoll_pwait(r3, &(0x7f00000000c0)=[{}], 0xffe0, 0x200035, 0x0, 0x0) close(r2) 04:26:31 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) r0 = perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x317d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$unix(r1, &(0x7f0000001a80)={0x0, 0x0, 0x0}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000a00)=[{&(0x7f0000000840)=""/206, 0xce}, {&(0x7f0000000940)=""/174, 0xae}], 0x2, 0x2, 0x6daa) syz_open_procfs(0xffffffffffffffff, &(0x7f0000000240)='uid_map\x00') r2 = perf_event_open(&(0x7f0000000780)={0x1, 0x80, 0x7, 0x20, 0x9, 0x0, 0x0, 0x2, 0x18, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x6, 0x1, @perf_bp={&(0x7f0000000180), 0x7}, 0x10a1, 0x7f, 0x5, 0x4, 0x8, 0x3, 0x5, 0x0, 0x5}, 0x0, 0x8, r0, 0x8) sendfile(r0, 0xffffffffffffffff, &(0x7f00000001c0)=0x37f6, 0x10001) dup2(0xffffffffffffffff, 0xffffffffffffffff) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3a, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x400}, {&(0x7f0000010100)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x860}, {&(0x7f0000010300)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xa80}, {&(0x7f0000010400)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xb80}, {&(0x7f0000010500)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010600)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x1400}, {&(0x7f0000010700)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x1860}, {&(0x7f0000010900)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1a80}, {&(0x7f0000010a00)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1b80}, {&(0x7f0000010b00)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010c00)="d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010d00)="0000000021000000000000000000000012950c789168613c00000000ae8bfed70000030000000003000000003c00"/64, 0x40, 0x400fe0}, {&(0x7f0000010e00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x4011e0}, {&(0x7f0000010f00)="000000000000000000000002000000000400"/32, 0x20, 0x401240}, {&(0x7f0000011000)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x401280}, {&(0x7f0000011100)="0000000000000010000000001400"/32, 0x20, 0x4012e0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x401320}, {&(0x7f0000011300)="00000014000000020c6000"/32, 0x20, 0x401380}, {&(0x7f0000011400)="00000000000000000000000000000000000000000000030000000000000300000000000008000000020000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000011500)="8d070001000000000000009ded0000000000002000edff000000000000000000", 0x20, 0x402000}, {&(0x7f0000011600)="00008c00"/32, 0x20, 0x402e00}, {&(0x7f0000011700)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000011800)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000011900)="0000000000000000000000000000000000000000000000000000000100000000d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x404fe0}, {&(0x7f0000011a00)="00000000000000000000000000000000000000000000000000000000ae8bfed7", 0x20, 0x405fe0}, {&(0x7f0000011b00)="d73cd47aae8bfed700"/32, 0x20, 0x5ff000}, {&(0x7f0000011c00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000011d00)="d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x600000}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000000000c889421e0000030000000003000000003c00"/56, 0x38, 0x600fe0}, {&(0x7f0000011f00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x6011e0}, {&(0x7f0000012000)="000000000000000000000002000000000400"/32, 0x20, 0x601240}, {&(0x7f0000012100)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x601280}, {&(0x7f0000012200)="0000000000000010000000001400"/32, 0x20, 0x6012e0}, {&(0x7f0000012300)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x601320}, {&(0x7f0000012400)="00000014000000020c6000"/32, 0x20, 0x601380}, {&(0x7f0000012500)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x6013e0}, {&(0x7f0000012600)="03000000000000030000000000000400"/32, 0x20, 0x602000}, {&(0x7f0000012700)='\x00\x00p\x00'/32, 0x20, 0x602e00}, {&(0x7f0000012800)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x602fe0}, {&(0x7f0000012900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x603fe0}, {&(0x7f0000012a00)="0000000000000000000000000000000000000000000000000000000100000000d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x604fe0}, {&(0x7f0000012b00)="00000000000000000000000000000000000000000000000000000000c889421e", 0x20, 0x605fe0}, {&(0x7f0000012c00)="d63cd47ac889421e00"/32, 0x20, 0x7ff000}, {&(0x7f0000012d00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x7ff040}, {&(0x7f0000012e00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000005380000000900000004380000000000000000", 0x60, 0xc00000}, {&(0x7f0000012f00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000003380000000900000004380000000000000000", 0x60, 0xe00000}, {&(0x7f0000013000)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100", 0x6c, 0x3001000}, {0x0, 0x0, 0x3800160}, {0x0, 0x0, 0x3801160}, {0x0, 0x0, 0x3801fe0}, {&(0x7f0000013b00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00'/32, 0x20, 0x380215d}, {0x0}, {0x0, 0x0, 0x3804000}, {&(0x7f0000013f00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkall', 0x40, 0x3804160}, {&(0x7f0000014000)="0000000000000000090000000900000001000000d33cd47a0000000005380000ed8102010000000000000000020000002823000000000000040000000000000015bc645f", 0x44}, {0x0}, {&(0x7f0000014300)="ed4100005cf90100535f0100030000000010000000000000020000000000", 0x1e, 0x3c01000}, {&(0x7f0000014500)="0000000000000000030000000300000000000000d33cd47a00000000023c0000ed41", 0x22, 0x3c01fe0}], 0x0, &(0x7f0000014900)) tkill(0x0, 0x34) ptrace$cont(0x18, 0x0, 0x0, 0x0) ptrace$setregs(0xd, 0x0, 0x0, &(0x7f0000000080)) tkill(0x0, 0x7) rt_sigqueueinfo(0x0, 0x8, &(0x7f0000000ac0)={0x23, 0x7, 0x7f}) perf_event_open(&(0x7f0000000a40)={0x4, 0x80, 0x9, 0x1, 0x22, 0x4, 0x0, 0x8, 0x32840, 0x3, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000040), 0x4}, 0x1000, 0x8000, 0xff, 0x0, 0x4, 0x5, 0x8, 0x0, 0x9, 0x0, 0x1000}, 0x0, 0x3, r2, 0xa) 04:26:31 executing program 1: r0 = syz_init_net_socket$bt_sco(0x1f, 0x3, 0x6) ioctl$sock_bt_hidp_HIDPCONNADD(r0, 0x800448d2, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'syz1\x00'}) [ 1160.323441][ T9031] 0 pages cma reserved [ 1160.409182][ T26] kauditd_printk_skb: 8 callbacks suppressed [ 1160.409198][ T26] audit: type=1326 audit(1637295991.442:190): auid=4294967295 uid=0 gid=0 ses=4294967295 subj==unconfined pid=9106 comm="syz-executor.4" exe="/root/syz-executor.4" sig=9 arch=c000003e syscall=231 compat=0 ip=0x7fd429cf6ae9 code=0x0 [ 1160.478088][ T9111] loop2: detected capacity change from 0 to 245791 [ 1160.498348][ T9089] usb 4-1: reset high-speed USB device number 48 using dummy_hcd [ 1160.563446][ T9111] F2FS-fs (loop2): invalid crc value [ 1160.594009][ T9111] F2FS-fs (loop2): Found nat_bits in checkpoint [ 1160.764653][ T9111] F2FS-fs (loop2): Mounted with checkpoint version = 7ad43cd6 [ 1160.833884][ T9126] loop5: detected capacity change from 0 to 1 [ 1160.956811][ T9126] ldm_validate_privheads(): Disk read failed. [ 1160.966754][ T9126] loop5: p2 < > p4 [ 1160.973210][ T9126] loop5: partition table partially beyond EOD, truncated [ 1160.983084][ T9126] loop5: p2 size 2 extends beyond EOD, truncated [ 1161.001800][ T9126] loop5: p4 size 2097152 extends beyond EOD, truncated [ 1161.470677][ T9089] usb 4-1: device descriptor read/64, error -71 [ 1161.760740][ T9089] usb 4-1: reset high-speed USB device number 48 using dummy_hcd 04:26:33 executing program 3: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) 04:26:33 executing program 1: r0 = syz_init_net_socket$bt_sco(0x1f, 0x3, 0x6) ioctl$sock_bt_hidp_HIDPCONNADD(r0, 0x800448d2, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'syz1\x00'}) 04:26:33 executing program 0: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000042c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) unlink(&(0x7f0000000000)='./file0/file0\x00') read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x21}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000008a40)="e74a0f89e88c3aba2d1c776ab25b221b366ab0ac5db05ec87f720b51be2b46fe1aa4d1f50e8d278e8e9641885de16dd0ab77530a7a8c79b801a4c8c9567e29f0fa2752524cd11497506cf97d82f723a251df277d637259d2bb510d2b02d10e860a1edc040eee393f7888f1d66d3a473cb767afa655e1b44ccbec58fb5c93aace8c0b871aa42975bf03e7e187400662d6904e49dee4e2af4c6102ecc3f0337be6784bc4a2a31309934f6f5d25877efe0ed45a3aa006d101d91f9b2afc4f5e481a8421c4c734722ef89ca7f9b44bed7000782cfdb5a200c3a1e9a277a9655f28767a39f9e495dec1e1bb617037b6058df1ac7127ab3150232370a5f2dc482f007ff59665fcbc5eadb27cfc85ffaf1c6da0fc2bcd45e04c038a09526be1689e06771f18a2cdc8e66741fedc0648170210d1980db4781b1ac2968a88df1283eac5f941c56fb5c9fb9dfd9b97abf16d382f346b777f92d9a0342099617e1f6be516d856dcec566100be918c31b31bae1201408197c93352cfa7b68d8ff995bfaef9a1557a00f9c411e5b82818f96f53608cb486d134bcd8ac55cd0e9979c9427abe385dfd50b4096764a7d2b3fbb3bbebd826af4abb97bb0fa75214a5c2a684239686c0bda28d382dab3f293d85ba35edd9e2f22eadf3733944267001e596b8bd36e308dc58d64df4a54779febedaeece93767debfd371bb76a2b9961d007fcb4fa607f1d03ed4ec8a50ed7abe639784569d11787b4e145caceec20145d2ae15b9fd9790589dd2a3612247c6edceb22c7a790d10944acd16050ad6e3de7a4aae0b1c4fd0dbdb8bb70946abf2c95e7e1a6c46d46d98a483edb5e02b7a83dbe8f0608167e7a01671f135b613c11cb307b8e004d4306884907bfc83e0397827146f5101ce5528dd7c07a5d364dcf1857772d7ea518a9847a853ec9e75df1e14fee7c5087dcd923808ded43a63a0716fcc0661c1018847bb327633a1ff9e0dffe85c971e2458b4eca86f44e20db067b30e1cc5f4eed7064f76fec7a772b8239e24de0bc65ed7a48521ce8f9470e5289259c1a93c63251ba3cb9fd40074a66c2ae0d6ab50bc1428ea14a254aba9bf6875885fac3cebababe0abe4fa2c4aa02a83698c15fedf2dc4fe85474c26a9419c8a818515c170576ba2bdeedd7fcc6f318414a4a3d21c9cbeeda8a93420b0edf749ea937d15e3624b9ee08de930510b108de17e126ba03acd647a7ec8ddafe3ca8eddafda604424cc0e1b3229e64b3a8f334cf81062066e6d451306e00c61b0ae09a7457c7a9299acba8f28210e8bf2de29c413c27c06a885f4d76223b657e08e24e881db1bcfe5b6bfd21c10ddd08b82782e1d63f72ec05dadcb3e6f4c651acfb8e108609f37a0ebfa1992eabdbb0d59c3bdfdb6db5c8ee69280855a5a28f25f18c43da954337213621ff72b607e1881bcca05b53f1c48206c4a41ea513bb45197e9ae69064557dda4ab0f2785f5f5e9d0c7b1c81838c5d48f6376a8fcc0230bdde2471a3521ba0cfc222989b336c7aaf81664e3465f45d4d0820833451fa85ce0610dec0bb0dc7020a91f5bfdb6ddee67152a497507c391207b7aeed6bb1f6eb812380b33e42b78d1c1175d9aeef5c67894879d6200acb2aea17c5461bd2909315fb7611d72aaa92a5b1801b6f0402ae8a7a251bc5b7e652861886edcf155515c34306a96e9af5d19d29d425f30dbcc7715490343036ffc28b117c234aefd3e9a210e2248379754ee19c7b24f75ed41e418321a2ee4607e6801bf764f9aac82c13685d81865e4c68ee67d23c02937074e0099461711c5ba2c40f4218f00ff884db32bd6b6c753f352d27de3e9ef39a449f470cc9d5f0a347603ffe125365db8f7ed8db6a6ff3f054b7e3b1e1ba4e3b120abee0d791cd64f3ecab1be0a985f5a04c9bf91566b6af9a0705618a7eb7bd34dc71c6e982fe9c684d2fdcaf5ad1f4366c6b1573520b3a43d1575973976e5a2d8342836da61a919fe291d4e06dc8b8047fdaa591db96c5f708d7efc10d0febd2de603998daa218841c38f38c294f79a058c14b8451e970d45b64ab8cfd811e332ca469c1ad1a703c7889b6af2430b5a9a16efb95767cf6e176aeafe1d7f3e207b92316038a694dc77e4f9d423f023e6e92994bcacc8811afd8022cdf24268c646e4f8f1eec0ebd9adf11a338bb0b76bffdfdba5060cd8858c3861c2020a8367b65b272305871501ce9131ba58f4bee28542651ff43e4b044e08eebdac22901166e5a4690335d5c195d0d895470df40c756e553230fb20485f25e6122c131a1c240a8eeeadae8bd743e25aa7445c4d13bcfc2012a3fffd8e71840a73b0fb86e01b189ed98ffaf53317a3be72575c72b3851f5e6d58946ea53c27a2c074de878396bce0f0a8639e4cd188b0c41bc93ddf2e2bc21f4a6a2a5231612f7cefa0735eaf3fc599c018bfb788b0951173df46c9f57ac58a70364a78d4eed63659e80983ff21b441ba041a6e0f83cf5cbb46787f8032f35ee2d35fbf278ff6b0c4742b0c8e9b8b51081b3db97c75feffcf4793b50a774f9fdb8e1df5bc3b337964677d2e7148e31ea866090136940a9670ff492d88b48d7f5a9cebf32b865381303636930ac76c940454bca3060d8f3e4858b55147eccdbcdef80c64b8030498ce8e15420d1ea46c5406a55c89434765232bab57df4fd145a60191eea9b1d634968e0087083db8bd71be34739261753fba1eb47edda8df45c8bef040b152b1da174b1da36f731cd77a3ed39d6ffdd5bd68d4288c4d464e476c136d3ebd379168bf87ac8ba63a8a6a3f2430af352f2c252a0ef3ea2560870aba83ccecdd0e57ce9859821f0e1da1afec294048a1e22cdd02d5685181998ad20b26539aeb8e8fe02da9f3965583cc8109146ba182b6c8c945bc0e3098a353d07f9f28737fc73ecec7d12ac68f51135a617291d57e57a625bc7fc2174560f24a7667d4106c11922815af1fc4bfca24b625ff6953d8255a7771542d2fccaf74195c957faa3328cb7180b12efc3640eeac8dbac1aa55d236904975ea0521d8b3aa792c8c3194eb15497fb68351b2f662e6dcbb03607feb7c2f29456085d96d4dbcfbbcb2828c812f21624a301b648201d27b9e80862189e7f8e81b479301b4a55dc2aa7732b3460001d072f04c96dc34fbe5f7eaa12107dee5c4fcab6977d65d3e5a3cb2b2334fa2ed10a0ff0f02b43a16f5bfb6d4909b70af2b1b1d072e5c8b0a344ade8c7044a2a1ab9a58ff0e629a2345a9633513ac429ba96b8911c227a306fb23769d02b233b869c91abd605e4d13e92f56b13414e8b29e1e9b203154db9380bbfb66c4548df00dc5f3b13909b2bc4e90d5e3a42b6e4d6e8e1eaff7b319179975ae90e3ded62efbac60abbb57f07c348a4eec2032289ac91476297385e0ba3a9bb08de5894baaf7c6a46b4e04e75c10722dc2c5af819638b8d41c163065cd73b8be3ef6c36cbc556fe87b4d35f14211a86fb8800bcf677a17ab8808224ed0ca780338893612a686fd6d44a1b621096477f6f0760abb232d7bdacf9c7811eb0d87d69452f74c7563c583a3972083cefc8ea05513b87f6d0bc52fcca7d1fa02d5f5f06837526597ea38be7c7a4b33f53917e84e7a46021b85d416a6455cba0646a2e8106ca515022355e72f5c5c81d23b2bc2abcc3ed75db75da3301df758f797a61c33bf8bd3711c202da94de304b7ccd1049d58e13190d56627755ab3ebcdd2922bc162240b9be762247423b434122bf5173147ac981beaf9dcf95f0f28601b5d0dcea36ef0f06be3eaf57a86e0523cdc712ed58bbf081ab9ddf9cc404f6dc3e48299d457c79735587d83d64af69bbcdd1c9654514aee10728fb51ac14f5de78152a2e15b7d40189903e1c8f6decc9b9c22590acfc66c2c61028f2d55609a25e0a99beb9b542ad9b0cd8dc60f5eeea600e8567fdf1675bad45b6d10d4ed8f8bbf012ce632d9d1b73be0944eb9b475a1567c21e22f5b5db331cbc0312fa9069fa04aab947a57d28e7620ad728a589ffe214409284b9ae9fecebf5ef5a99aec1efdde05eb7f2bf80ea66cb5f4580e5eb75e8aaccf203b0e8c29275c05c8ed39029b5d74e20b92dd2b2e6525e7e4e7216735d74f7db4cfb4f76083f69bd6cb2f45a29229e38b54f1e4f5a73d579c23119f720e31d39c119f0f07141c4a461a710e28333583538bbcce0e6b06f38efc9dfe99c826c54295362553f87536ef5280016b7df0652a70368a712e3b0d1b3d73d8266d82d519e636548ec28767b9b109584c2a07e2566abe32d0cc509414b1711c53a37f3b7d218ce3bddcd3ce3bdcc2a7544fdf19ec9b6bd5a35fa8a30226ff37fb679138a5aa53f952b3f8b68d9a7eeda49f055804d5d25b10867d8652290d7e96a0c0a64fad854e6935cd1594655617d4c5a70074b0febf8272468f8968876acf52f1be6adc27bd3e730487fe5ae444b7b6c20f24c825474a95a1a739be1650ead9c7cae41718b131d4aa8291fb2dc45f5633f482b6e31aee9fd0432da9065b084e5e58cad91c5f9835c524b093cac7bba5cdcdb70d2dbf3ca0520f5f0dd74212c58c26b4e45122e583b5caef4ccf202a6b3a5ad0de8c9859c82c397b018e7528acb59cfd465b30577a8d4a358b58d0d5e510e1c61a522a4f843d0e580bedd5d97aff93915e756800ca9890e37275659efd87c6f31466e56141a32ec4c789afb3fa942064caabee55587a69f2600e708a9e58eca5f5c2ed0d348cef955a261b0ffda9c51e70f2335dafa3c2e6fc5efe28229c5bfa7a87361bf6fbdc74731b67003b457616ea7bd30aff832b7d18f4367bec3934983c9363adc2b1ce3c63fc4ac0d9a8e15a727b57131ac6d140305dc69b866e4212c6a58ee1ef5734db31e95f08688e8f8f6cb5b1ca4d9579ee09b7f4391e39dd84b2e7b2bc4e3a1d330f4b29426864ee08b59956d688a61aec981062af97b797b9921f8f881b7baaa200b4050769d8ff1a95d5fd1c4063f2f4aa472117429040f1ff2b50e794c2197d472adaef17c8ad035529593e6bde8318d90a16190efe531f4e1c83d317ce279d71711f3dc5b2ca6c2939caedd688927144c8f51da45fcea09b551d1c906585a7663834ee0d6372d2ec5a41af84ac3690aeb2723517dff02fcca3d30fbe33c8845808b2a1975e098d875e4512ffc527a9372a6fa6df55220182c02f22b39295526c40efae0d14eeeeec35e617a6894f58bb51a0d9c621bdc72ccd8bdd8091290a5dbef4675c3cbdff98050eb4bf04eb9a2159ce14bf68f3408e2c482410dd1ee2657477573acca4b9ac702625c0d628682753f2e0146799a62dfce3ec882fefd902e8fb4c67529baec2434154329e1d95dfc5136b3b6e6ba60da0b48cfc9391ac0b055f7f75ab5b2a0e5eb396acb972bd380ed670ace57fba31145609806b2d90e02b2ceba535b3477071021788e2ad746ca1ab7a682093a8e8b183830a0ff3a40fc9f191d3415d050bdbbc9799ea9b1100471e29feff398d251699d5ec8304328e748bfd34ab714ea534a49da85f173af9bda7a0296e511df46cbf86b61e89ef22e6de5a3b0fb9fcbd7115879d1d84f560dccb7e06f9cad4a1c9332aa4861ea97ed6619e839b302eb9602b2b81537815594bd71703b8272876de20f5b08b796eb5985a095a357fedbc513737b74c4a37d6abf063807f54e14d001de8e78f129c646214dc88f5c21c2185000eb359702036d97481bab9756244413530bb67794f8f2edd7be9caedc86bcf6af2127671ab63ff4e6db943200e01b10b01c0b9fc81f851513ee59afe255387fadebfab57b5a152cab4933cef455700091d832384ae3871a91553574b297ed5ddd3f70d04adeb30e1342214435c305cb34159a357d23bdb2635e2abf29ea68e44f5a47f9bdd4c949d9aeb87cabf6b3917cc6bcfec88bc18fb6d62f3ca7a57bf4a960f589fdeb827f482b9f9b05541da8db5ed22b4fb3da5bad8e179dcb72ef378b7c6db26bd5bf10b797e73cb0cc29c7fd96f49d7d01e1bed6e750d35ae86bbe120bae824a089153f395e8c4702adeb83eada5c9ea678c649fd886f5e41173327c47236e7ddee054bdafe36bcfee9ad62909fdc53cddf2b40d0be68a91d774305e4359701aaa95d438cd4dd0b7bf4a3e38bcf3158e71feb46793a5e0cdc8e27e6dbd7f92213d5fb3165a68f411c224774730e9f745a9eacaf32173eebb198a8643bbb90c954734bdcd473bf0d48ca3362ca6788a90fa34aa056ef8d3e41aae3f3500adc509fe1025bc31b526623a30c97d550c2008bf8798042c0aedf3b306d4090af1944592a5793539df69cb33beb42549602fc9f98a9b9d7d4170ebc210e6217908833c5325bcfb9c82b0701cdb8c9653adb1da531e7ee4024efc26041772a28287684d19db5cc16ccc62b2a1b4642a73f44c75797677f6a490888f473c36310f85f51ff83443450f75333f00a4a5ddc4a90d066a44fa3cf763e65765f14d8e3e417f1bd19a6424488e5912ffb9848b66faf05b732f3569dc254cab7dd2bebaac809693f83005ed6e89f3f49ecac10de6aea859675ead7ca6b68ab62a1324627dc7ebfab24132e59eb9c912ff2cde91fa324d0488350b7b6af6187690835258540e9341d0ee1a8699a1f9b4002a5e5c419f75e58f13231415e0987c9bb9deb4780a887a1eeb33e138fbfe4363b397ac3c433b77ccac37ce6bad9101b9919bf3951aaa0e7c079edebfc17633f18d44fbbbaf85a6f906881b265bab9ad8012be7dd4d6a86a49df72d9d7efaf2d99593395e8150f40ea89232f0a974072e965dc420fdf138f7f8bea3963f95dcacef1894033bd5a9f954e1d25cad40a62f382f224b7714e3c57bfc91233314b3802deee382dbbf80fc90714c741ce9417dbecb9039e945f8edc623ca52a095768935106b60756bfe1f5dd0de74636d0467d1460830542b8639bc1c5c6012857950003c2e604204c8ed674e3ecb284aa087308b21ea6b4df7995c6ed8c93aadd7c1cfbb0f4c6a9c043f8556ae2b796ec1977f981cdbd4c1b24543297e7c0af25aa012010e9e6f503264e8df555426b617ceeaf7536548d983ab897a7e0a5c821ea4efbe426c20aaa542270d0dd692a590e230c244a881b883b61ec3bad14dbee6cba17f81f4fd56290d3ca124378a72adf8ad9f9e2af3c6e29987decb125a74a7c6e2bba7244fc7ebc393963be4062a57ec9210919d867729ceb64f7d540d1d5d82bcce83cffc526801435ffee0205a18caf3cf716aeb28d85c5951dd18d7cf8bf5e1e83f84865ebf6e65bdc75ada2fddb2c06620f15595633263a2e053a8a36ea80cae0ab13e5a96cb34f813bf466aeb6a9e8f7b70df5ed563518b96cd253a4a590bbcf21cdbc7c027cec64afd15e52aa97f8a6890e2fd95354572c4371f6e0d8b588c7ecb832d2911f2bfd03407c01d6dc5757ed68a6a037397cd7d0e1d39b644ac7bf286b34c61b8b605e47522d212a1f7471251ff627a935daea7aed047a6bb418c03e41e674897da32d99b69c959a0a956f78b7c787415401eda1f35ced661905adbe1666a928fd1564979a35b2d3962d551c1ce5d44f3627155fc5b3a1be4318ecc41222c712f56d276d800a8f65eada3acd03982f705f970fc7ddb1233ae5e2c2ef2bbdf3780ee8b42878ddffd2152a6083c75bf55b72d095407efb7dccdca556a5bc6ff8fb71335ff8d944ed3a7d82ff982c6212011c7c61c47d4faeb18598111572f605b66d49d00b3b666b808259bf6db62d3b4874a9819ea938c6f60baebeadefce11df20523e628a524d6ded161bdd2f60a67e52e4f20e2b980111daaf4d6c1db53576ac1d599a659bec0e6cfcd665dd3abe6be278ecf1e22f994e25d07937cee04a1ffe90bd9201d91de25535d67d7a5d1ac8bc058afe38dc46a6ca2b7f467dcaedc5cf4957200d64d9cc058e3bf24bae9151c0a4f60a5fbc2ff1df7a442726b73a06b007048e8a2ec1c4ca775374efaa6e38ff210a3c397e67398dd2e97aa26639034a71da887f0880be14dfc5721b99d79bf5fba9d9cfc35a5dfddf9ca58036083e94e68ed5b3147a46edd5cf2f1d3efcd460790890caaf1d08f765bfef6d42e226370c6a63ca1ecc4dee7caecfd8008bcb4b7b2b6d782415c9af164207d3a21421a4412f2f31a703f30c7dadc40735f138195e6778ecc13cce38cdc13fb2d8dd59bdd420e674ca4eaafac2565b61fb1b6a8f658a3bfe1a318cca3c2ea412494d3b484718ce4044da3136cc597767a8339e772ae43f98f2a1d36b1d228eb05cfe29f4b908cb7a3aa322fe2208e7ed1df22732a72a4903a8c91483c4a6a73711ca2cb22eec483780e63f76509f642d4e607fd19a71e182f49a75dd8ab5a55b5423ebdc2cbab0d8df1871ceed5ba14229a79d152813ddd55c7ea9b3b29debd8b4b2d4a15a83441f82a6e07b52fba99b64753e55aa36549954d2bd5fdaa9e151e441f23187d698ab4a0507e32222b3779cb341cd46d43814fd59b230b16bda7dcb789ab3ffa3a43b68063ae40f9a1953c90d96f239819e2abf63d0a853135a23f031726b794730bdd9fbaa512865fd91d4d9e9c61fa89e36137bc4331be7c94167a178b46f60c5a2599ab3d68999d4c14d91b1d4d9d5c1f7174ad5dfe57a3945898753f0a58d6e81d6508ee986ea41ff56cb410ee6b734637b4c8dd24b8e269d1294ae449c418fd4ffb736115a2a83d1e57daca5af10de77d0cf0c1fef985e44676e6f108f3c83caa0d6efbbb4083ff2662cdfe1672af39d2f75d29d4e33c97c3fef76e66c582142af188427ffb4d99a7a1683799764e2f03f84765acf8a1260d56b35355a38b0835b299d34b34f998bc01d41133bc41017128392dadcacc529b09ffdc397cf4340a5ab7e81f623776455576e866dd9736795c5f40a80b52a4f5c07927d811f34b2a4f651b66772209920c491fb740a11dfdae2e3000107c33083fb10f6208372acf2516a40e1dbbfc9dd32fcf3dfcce8e9c81349ca28817d86e56f3603040917690b0a47438d29817f36b190a2581e7a3fcea4895cbab6ad2acca089252fdd2bfea22637502896e011a88d2403ded83f9a067c8172300e3cdd1f10c5f3be6d5123521205d86966f00677f5d589f4cec5766c74420cde42b88ce0901188fa32952e404273f4a62610e77e57222e00a56bda0bc39c48de96fbfb54a6d8a255ef9c73d67efac6fa23a760c1553cdfb74bcbb51dd0f727ea58aaedbfabf96dddfc9cef2f844270268deeeed15da525e775a49fbf5f6f312fe20c3c272a08c919a1f8f60e763156f63a508ec49a5d4ca3d5a8999552562c6058d404db130619d21cb56be4d2c60532c48f5ff3d5c867ca68a86006b4922bacbc598b4267f6fc97840850fff307496441e546847c617f94a223c6dcdba2aa66e7dd71a0b92d09f988dc442b78f5b1b2a84871f4b66698cdce033f7a76595337f1e857c311318374947a9934ca531b1c14df7a6ed0f59fc97064686e37e1fb42a2ac898ddbf68b1763409bd6fb6dc8f720321f5831aef8402e96106ace14bf82ccc3337c1c9bce7f908a5b8141d4f6636278d179014c77b334577d42d28eea6f48680edf2065cc0c3b066c8c0d9cbb301a5b010a8f9d6098c189cc54f22180a3fffa2ede4834117e18b853a833876ee6097c7642aa93a03e0ca2387a84d0f0d1189b35e9f9dfb775646903b33297097bf9d494221c3641dde223c7ef77bd92b1f7ee4feff19950371da95e0b7536985f2410aee2b0ee64c60aeb9e16e40d980e8e91314e16f9e28ed964d8bd2e821a1c9770fe4632a4a1141b68b7270e7906b975e8dc7d15ac972c306b0590d4c73b2ef7cbb58ab00511505d8e32bc7e848bac899bb4e9a4d40998e0e96f72b57b7fa4c421e33b2e8e5e9991931f306048287fa44b0ebfd156cec56c2d4836a21e4d5662ee6bb0a0206a96af3a80d802b414f4903f97f23ef4fae51457b98f48baf8415f5ee004a4ba6a8ad1b162e0de1a6afdf8a73ba12c1897933dffca1ed8f6c7b6c4d76885f07634c6e9e2c427447c5605d1f4c11d1b5cf98fda7078b7755bcb2478796c8b26d986f3411986d4ba6a716216d794301b8a143e7ad1534c31f7e41090d6cf9d952780d5ebad58ad7aa6667a5b6037c8eb7a0806cef0fa14484af3c26f1d55cb9b53adc83762fa3b135af262f09c4c115c5c86cdc9775d89fd13abcb48c5eca2357d76ffc4a061ba230073e788730e1d81acac9558ae7e35b3c7f8cd81c010215b1468abcca7c64b155fe2577245c2ac683887d775d5be883611fad0c8164fc5266a248cd8aba7ce9ff5564f3ecaa18ce233950f01486f4b3b2dd029c41aae68f7dece7b598cb5e17143fdaafdd8dcbbfb3fc1cdcb7d985e4ea7119b2007ff7d401458b6394e6a982388799479f8538521bee5d541357405fc3adfb87eb36dd25993102de747b35b465fbb139c87489cf0e2d5c209ada58461659a9bbd27e223dd7c22e5c83736457db2abd41acfb507c1a695998e3f559c24d98c6fe6c1a2d26c8bb804b9077b7ee5492c0c6d95075fab52d902213b162cc21cc6ec4784ce68479e3a68e18166d5479fc5a3b988b5de4b95b4849922abe6f0bb5fa7f82765bf0be672a770f6b562335bd6776ec30e372b3da332009564e4cd2f7c79c8709c0541094c93402d0cccf13cdb70b994936571bd9664f7de4c7c95cb244e0af44561820383e28d43f4eddfb6ca59b58904433cf177af64b8ff7b5ce0e8c1ccd1140b3a49c95360daae08a66716b5e63ec7c0c41ee9c4e371751ca670eeec72d5a8f3a59c45950fd21d86ca113f7ff806b5acc75488247590c70c064ea11a627c8bfd475b6db7737c8e73aedc539332f8c90e3c651f50d592560f4c457960ab7345a57e066d8f8c42569a088adf6e54b7eece3f561b827531cee0cab06d9485da102e2922561a1ba81fc087337eedc3dbc4d9f25bdcb53a34dd98dd2bb0668a79164b05cc6b9031f1c0168d5735ab083ff0513903fd41a87b1afdad271e3594b49ea98ac8f5da950ad0784fcf926d161481e861d7c7161aadb709d0ad0814369636c8e2e8bd5b0569887f8d09b2acc11911d71e2e98ec90fb79b8b5c8844c19d5aa5f67a59d44472af414cb4f385b179f8d7c33b2214f392f52e41a9137eedc35f3fe3af8abc2608b4005120cb01da724529b273a9b56dd6f2d48a49a3b038a967fad7b85dfd1b13b72384003f99ef34f38872d192929251bdadd2ab077839b22660922952b48af303a7997b5d9e3590f08675463dbaec4f05852d4e8434e21c28a38514f73f2da389d053085c3fa2bde6701010ee45fc7c13c813621cf3c05a5ff9256153194fc608a5b5b790fcb263f80d7f19b65f9df878df4e019b72c7cbb025cdce118a65913ea0046c9338bca9c1439fc63cb2715bb27929516abe9e1d48cd986ac30b8a77172fe99a640c19cfc74825e977d467db140793adcb1bad426d81dbd90d619e3465dad048c4fe30f280cd59d1ad7add9ac1fc14437b8f0dba3a4de858055716c45ec5410f601f1736f9b65bbc15d9390bd07d5d0364acb01fc95e49ebb2d189ac25cfd0f6ef3f08c9ee9bc9ee335348ab", 0x2000, &(0x7f0000000a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000005c0)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}, 0x0, 0x0, 0x0, 0x0}) syz_mount_image$ext4(&(0x7f00000004c0)='ext2\x00', &(0x7f0000000500)='./file0\x00', 0x0, 0x0, 0x0, 0x100061, &(0x7f00000008c0)) 04:26:33 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) r0 = perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x317d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$unix(r1, &(0x7f0000001a80)={0x0, 0x0, 0x0}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000a00)=[{&(0x7f0000000840)=""/206, 0xce}, {&(0x7f0000000940)=""/174, 0xae}], 0x2, 0x2, 0x6daa) syz_open_procfs(0xffffffffffffffff, &(0x7f0000000240)='uid_map\x00') r2 = perf_event_open(&(0x7f0000000780)={0x1, 0x80, 0x7, 0x20, 0x9, 0x0, 0x0, 0x2, 0x18, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x6, 0x1, @perf_bp={&(0x7f0000000180), 0x7}, 0x10a1, 0x7f, 0x5, 0x4, 0x8, 0x3, 0x5, 0x0, 0x5}, 0x0, 0x8, r0, 0x8) sendfile(r0, 0xffffffffffffffff, &(0x7f00000001c0)=0x37f6, 0x10001) dup2(0xffffffffffffffff, 0xffffffffffffffff) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3a, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x400}, {&(0x7f0000010100)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x860}, {&(0x7f0000010300)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xa80}, {&(0x7f0000010400)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xb80}, {&(0x7f0000010500)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010600)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x1400}, {&(0x7f0000010700)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x1860}, {&(0x7f0000010900)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1a80}, {&(0x7f0000010a00)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1b80}, {&(0x7f0000010b00)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010c00)="d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010d00)="0000000021000000000000000000000012950c789168613c00000000ae8bfed70000030000000003000000003c00"/64, 0x40, 0x400fe0}, {&(0x7f0000010e00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x4011e0}, {&(0x7f0000010f00)="000000000000000000000002000000000400"/32, 0x20, 0x401240}, {&(0x7f0000011000)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x401280}, {&(0x7f0000011100)="0000000000000010000000001400"/32, 0x20, 0x4012e0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x401320}, {&(0x7f0000011300)="00000014000000020c6000"/32, 0x20, 0x401380}, {&(0x7f0000011400)="00000000000000000000000000000000000000000000030000000000000300000000000008000000020000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000011500)="8d070001000000000000009ded0000000000002000edff000000000000000000", 0x20, 0x402000}, {&(0x7f0000011600)="00008c00"/32, 0x20, 0x402e00}, {&(0x7f0000011700)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000011800)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000011900)="0000000000000000000000000000000000000000000000000000000100000000d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x404fe0}, {&(0x7f0000011a00)="00000000000000000000000000000000000000000000000000000000ae8bfed7", 0x20, 0x405fe0}, {&(0x7f0000011b00)="d73cd47aae8bfed700"/32, 0x20, 0x5ff000}, {&(0x7f0000011c00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000011d00)="d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x600000}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000000000c889421e0000030000000003000000003c00"/56, 0x38, 0x600fe0}, {&(0x7f0000011f00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x6011e0}, {&(0x7f0000012000)="000000000000000000000002000000000400"/32, 0x20, 0x601240}, {&(0x7f0000012100)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x601280}, {&(0x7f0000012200)="0000000000000010000000001400"/32, 0x20, 0x6012e0}, {&(0x7f0000012300)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x601320}, {&(0x7f0000012400)="00000014000000020c6000"/32, 0x20, 0x601380}, {&(0x7f0000012500)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x6013e0}, {&(0x7f0000012600)="03000000000000030000000000000400"/32, 0x20, 0x602000}, {&(0x7f0000012700)='\x00\x00p\x00'/32, 0x20, 0x602e00}, {&(0x7f0000012800)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x602fe0}, {&(0x7f0000012900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x603fe0}, {&(0x7f0000012a00)="0000000000000000000000000000000000000000000000000000000100000000d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x604fe0}, {&(0x7f0000012b00)="00000000000000000000000000000000000000000000000000000000c889421e", 0x20, 0x605fe0}, {&(0x7f0000012c00)="d63cd47ac889421e00"/32, 0x20, 0x7ff000}, {&(0x7f0000012d00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x7ff040}, {&(0x7f0000012e00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000005380000000900000004380000000000000000", 0x60, 0xc00000}, {&(0x7f0000012f00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000003380000000900000004380000000000000000", 0x60, 0xe00000}, {&(0x7f0000013000)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100", 0x6c, 0x3001000}, {0x0, 0x0, 0x3800160}, {0x0, 0x0, 0x3801160}, {0x0, 0x0, 0x3801fe0}, {&(0x7f0000013b00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00'/32, 0x20, 0x380215d}, {0x0}, {0x0, 0x0, 0x3804000}, {&(0x7f0000013f00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkall', 0x40, 0x3804160}, {&(0x7f0000014000)="0000000000000000090000000900000001000000d33cd47a0000000005380000ed8102010000000000000000020000002823000000000000040000000000000015bc645f", 0x44}, {0x0}, {&(0x7f0000014300)="ed4100005cf90100535f0100030000000010000000000000020000000000", 0x1e, 0x3c01000}, {&(0x7f0000014500)="0000000000000000030000000300000000000000d33cd47a00000000023c0000ed41", 0x22, 0x3c01fe0}], 0x0, &(0x7f0000014900)) tkill(0x0, 0x34) ptrace$cont(0x18, 0x0, 0x0, 0x0) ptrace$setregs(0xd, 0x0, 0x0, &(0x7f0000000080)) tkill(0x0, 0x7) rt_sigqueueinfo(0x0, 0x8, &(0x7f0000000ac0)={0x23, 0x7, 0x7f}) perf_event_open(&(0x7f0000000a40)={0x4, 0x80, 0x9, 0x1, 0x22, 0x4, 0x0, 0x8, 0x32840, 0x3, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000040), 0x4}, 0x1000, 0x8000, 0xff, 0x0, 0x4, 0x5, 0x8, 0x0, 0x9, 0x0, 0x1000}, 0x0, 0x3, r2, 0xa) 04:26:33 executing program 4: 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) 04:26:33 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) [ 1162.000716][ T9089] usb 4-1: Using ep0 maxpacket: 16 [ 1162.080896][ T9089] usb 4-1: device descriptor read/all, error -71 [ 1162.169135][ T9157] loop2: detected capacity change from 0 to 245791 [ 1162.223208][ T9157] F2FS-fs (loop2): invalid crc value 04:26:33 executing program 1: r0 = syz_init_net_socket$bt_sco(0x1f, 0x3, 0x6) ioctl$sock_bt_hidp_HIDPCONNADD(r0, 0x800448d2, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'syz1\x00'}) [ 1162.319827][ T9157] F2FS-fs (loop2): Found nat_bits in checkpoint [ 1162.334572][ T9160] loop5: detected capacity change from 0 to 1 [ 1162.440047][ T9161] loop4: detected capacity change from 0 to 1 [ 1162.517791][ T9160] ldm_validate_privheads(): Disk read failed. [ 1162.524798][ T9157] F2FS-fs (loop2): Mounted with checkpoint version = 7ad43cd6 [ 1162.543851][ T9160] loop5: p2 < > p4 [ 1162.548142][ T9160] loop5: partition table partially beyond EOD, truncated [ 1162.562903][ T9160] loop5: p2 size 2 extends beyond EOD, truncated 04:26:33 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) r0 = perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x317d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$unix(r1, &(0x7f0000001a80)={0x0, 0x0, 0x0}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000a00)=[{&(0x7f0000000840)=""/206, 0xce}, {&(0x7f0000000940)=""/174, 0xae}], 0x2, 0x2, 0x6daa) syz_open_procfs(0xffffffffffffffff, &(0x7f0000000240)='uid_map\x00') r2 = perf_event_open(&(0x7f0000000780)={0x1, 0x80, 0x7, 0x20, 0x9, 0x0, 0x0, 0x2, 0x18, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x6, 0x1, @perf_bp={&(0x7f0000000180), 0x7}, 0x10a1, 0x7f, 0x5, 0x4, 0x8, 0x3, 0x5, 0x0, 0x5}, 0x0, 0x8, r0, 0x8) sendfile(r0, 0xffffffffffffffff, &(0x7f00000001c0)=0x37f6, 0x10001) dup2(0xffffffffffffffff, 0xffffffffffffffff) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3a, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x400}, {&(0x7f0000010100)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x860}, {&(0x7f0000010300)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xa80}, {&(0x7f0000010400)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xb80}, {&(0x7f0000010500)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010600)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x1400}, {&(0x7f0000010700)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x1860}, {&(0x7f0000010900)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1a80}, {&(0x7f0000010a00)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1b80}, {&(0x7f0000010b00)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010c00)="d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010d00)="0000000021000000000000000000000012950c789168613c00000000ae8bfed70000030000000003000000003c00"/64, 0x40, 0x400fe0}, {&(0x7f0000010e00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x4011e0}, {&(0x7f0000010f00)="000000000000000000000002000000000400"/32, 0x20, 0x401240}, {&(0x7f0000011000)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x401280}, {&(0x7f0000011100)="0000000000000010000000001400"/32, 0x20, 0x4012e0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x401320}, {&(0x7f0000011300)="00000014000000020c6000"/32, 0x20, 0x401380}, {&(0x7f0000011400)="00000000000000000000000000000000000000000000030000000000000300000000000008000000020000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000011500)="8d070001000000000000009ded0000000000002000edff000000000000000000", 0x20, 0x402000}, {&(0x7f0000011600)="00008c00"/32, 0x20, 0x402e00}, {&(0x7f0000011700)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000011800)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000011900)="0000000000000000000000000000000000000000000000000000000100000000d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x404fe0}, {&(0x7f0000011a00)="00000000000000000000000000000000000000000000000000000000ae8bfed7", 0x20, 0x405fe0}, {&(0x7f0000011b00)="d73cd47aae8bfed700"/32, 0x20, 0x5ff000}, {&(0x7f0000011c00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000011d00)="d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x600000}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000000000c889421e0000030000000003000000003c00"/56, 0x38, 0x600fe0}, {&(0x7f0000011f00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x6011e0}, {&(0x7f0000012000)="000000000000000000000002000000000400"/32, 0x20, 0x601240}, {&(0x7f0000012100)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x601280}, {&(0x7f0000012200)="0000000000000010000000001400"/32, 0x20, 0x6012e0}, {&(0x7f0000012300)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x601320}, {&(0x7f0000012400)="00000014000000020c6000"/32, 0x20, 0x601380}, {&(0x7f0000012500)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x6013e0}, {&(0x7f0000012600)="03000000000000030000000000000400"/32, 0x20, 0x602000}, {&(0x7f0000012700)='\x00\x00p\x00'/32, 0x20, 0x602e00}, {&(0x7f0000012800)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x602fe0}, {&(0x7f0000012900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x603fe0}, {&(0x7f0000012a00)="0000000000000000000000000000000000000000000000000000000100000000d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x604fe0}, {&(0x7f0000012b00)="00000000000000000000000000000000000000000000000000000000c889421e", 0x20, 0x605fe0}, {&(0x7f0000012c00)="d63cd47ac889421e00"/32, 0x20, 0x7ff000}, {&(0x7f0000012d00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x7ff040}, {&(0x7f0000012e00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000005380000000900000004380000000000000000", 0x60, 0xc00000}, {&(0x7f0000012f00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000003380000000900000004380000000000000000", 0x60, 0xe00000}, {&(0x7f0000013000)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100", 0x6c, 0x3001000}, {0x0, 0x0, 0x3800160}, {0x0, 0x0, 0x3801160}, {0x0, 0x0, 0x3801fe0}, {&(0x7f0000013b00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00'/32, 0x20, 0x380215d}, {0x0}, {0x0, 0x0, 0x3804000}, {&(0x7f0000013f00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkall', 0x40, 0x3804160}, {&(0x7f0000014000)="0000000000000000090000000900000001000000d33cd47a0000000005380000ed8102010000000000000000020000002823000000000000040000000000000015bc645f", 0x44}, {0x0}, {&(0x7f0000014300)="ed4100005cf90100535f0100030000000010000000000000020000000000", 0x1e, 0x3c01000}, {&(0x7f0000014500)="0000000000000000030000000300000000000000d33cd47a00000000023c0000ed41", 0x22, 0x3c01fe0}], 0x0, &(0x7f0000014900)) tkill(0x0, 0x34) ptrace$cont(0x18, 0x0, 0x0, 0x0) ptrace$setregs(0xd, 0x0, 0x0, &(0x7f0000000080)) tkill(0x0, 0x7) rt_sigqueueinfo(0x0, 0x8, &(0x7f0000000ac0)={0x23, 0x7, 0x7f}) perf_event_open(&(0x7f0000000a40)={0x4, 0x80, 0x9, 0x1, 0x22, 0x4, 0x0, 0x8, 0x32840, 0x3, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000040), 0x4}, 0x1000, 0x8000, 0xff, 0x0, 0x4, 0x5, 0x8, 0x0, 0x9, 0x0, 0x1000}, 0x0, 0x3, r2, 0xa) [ 1162.618258][ T9161] ldm_validate_privheads(): Disk read failed. [ 1162.629624][ T9160] loop5: p4 size 2097152 extends beyond EOD, truncated 04:26:33 executing program 1: r0 = syz_init_net_socket$bt_sco(0x1f, 0x3, 0x6) ioctl$sock_bt_hidp_HIDPCONNADD(r0, 0x800448d2, &(0x7f0000000100)={0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 'syz1\x00'}) [ 1162.670855][ T9161] loop4: p2 < > p4 [ 1162.727021][ T9161] loop4: partition table partially beyond EOD, truncated [ 1162.754999][ T9161] loop4: p2 size 2 extends beyond EOD, truncated [ 1162.760907][ T9089] usb 4-1: reset high-speed USB device number 48 using dummy_hcd [ 1162.825593][ T9161] loop4: p4 size 2097152 extends beyond EOD, truncated [ 1162.920201][ T9089] usb 4-1: Using ep0 maxpacket: 16 04:26:34 executing program 1: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) 04:26:34 executing program 0: mkdir(&(0x7f0000000400)='./file0\x00', 0x0) r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000042c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) unlink(&(0x7f0000000000)='./file0/file0\x00') read$FUSE(r0, &(0x7f00000021c0)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x21}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000008a40)="e74a0f89e88c3aba2d1c776ab25b221b366ab0ac5db05ec87f720b51be2b46fe1aa4d1f50e8d278e8e9641885de16dd0ab77530a7a8c79b801a4c8c9567e29f0fa2752524cd11497506cf97d82f723a251df277d637259d2bb510d2b02d10e860a1edc040eee393f7888f1d66d3a473cb767afa655e1b44ccbec58fb5c93aace8c0b871aa42975bf03e7e187400662d6904e49dee4e2af4c6102ecc3f0337be6784bc4a2a31309934f6f5d25877efe0ed45a3aa006d101d91f9b2afc4f5e481a8421c4c734722ef89ca7f9b44bed7000782cfdb5a200c3a1e9a277a9655f28767a39f9e495dec1e1bb617037b6058df1ac7127ab3150232370a5f2dc482f007ff59665fcbc5eadb27cfc85ffaf1c6da0fc2bcd45e04c038a09526be1689e06771f18a2cdc8e66741fedc0648170210d1980db4781b1ac2968a88df1283eac5f941c56fb5c9fb9dfd9b97abf16d382f346b777f92d9a0342099617e1f6be516d856dcec566100be918c31b31bae1201408197c93352cfa7b68d8ff995bfaef9a1557a00f9c411e5b82818f96f53608cb486d134bcd8ac55cd0e9979c9427abe385dfd50b4096764a7d2b3fbb3bbebd826af4abb97bb0fa75214a5c2a684239686c0bda28d382dab3f293d85ba35edd9e2f22eadf3733944267001e596b8bd36e308dc58d64df4a54779febedaeece93767debfd371bb76a2b9961d007fcb4fa607f1d03ed4ec8a50ed7abe639784569d11787b4e145caceec20145d2ae15b9fd9790589dd2a3612247c6edceb22c7a790d10944acd16050ad6e3de7a4aae0b1c4fd0dbdb8bb70946abf2c95e7e1a6c46d46d98a483edb5e02b7a83dbe8f0608167e7a01671f135b613c11cb307b8e004d4306884907bfc83e0397827146f5101ce5528dd7c07a5d364dcf1857772d7ea518a9847a853ec9e75df1e14fee7c5087dcd923808ded43a63a0716fcc0661c1018847bb327633a1ff9e0dffe85c971e2458b4eca86f44e20db067b30e1cc5f4eed7064f76fec7a772b8239e24de0bc65ed7a48521ce8f9470e5289259c1a93c63251ba3cb9fd40074a66c2ae0d6ab50bc1428ea14a254aba9bf6875885fac3cebababe0abe4fa2c4aa02a83698c15fedf2dc4fe85474c26a9419c8a818515c170576ba2bdeedd7fcc6f318414a4a3d21c9cbeeda8a93420b0edf749ea937d15e3624b9ee08de930510b108de17e126ba03acd647a7ec8ddafe3ca8eddafda604424cc0e1b3229e64b3a8f334cf81062066e6d451306e00c61b0ae09a7457c7a9299acba8f28210e8bf2de29c413c27c06a885f4d76223b657e08e24e881db1bcfe5b6bfd21c10ddd08b82782e1d63f72ec05dadcb3e6f4c651acfb8e108609f37a0ebfa1992eabdbb0d59c3bdfdb6db5c8ee69280855a5a28f25f18c43da954337213621ff72b607e1881bcca05b53f1c48206c4a41ea513bb45197e9ae69064557dda4ab0f2785f5f5e9d0c7b1c81838c5d48f6376a8fcc0230bdde2471a3521ba0cfc222989b336c7aaf81664e3465f45d4d0820833451fa85ce0610dec0bb0dc7020a91f5bfdb6ddee67152a497507c391207b7aeed6bb1f6eb812380b33e42b78d1c1175d9aeef5c67894879d6200acb2aea17c5461bd2909315fb7611d72aaa92a5b1801b6f0402ae8a7a251bc5b7e652861886edcf155515c34306a96e9af5d19d29d425f30dbcc7715490343036ffc28b117c234aefd3e9a210e2248379754ee19c7b24f75ed41e418321a2ee4607e6801bf764f9aac82c13685d81865e4c68ee67d23c02937074e0099461711c5ba2c40f4218f00ff884db32bd6b6c753f352d27de3e9ef39a449f470cc9d5f0a347603ffe125365db8f7ed8db6a6ff3f054b7e3b1e1ba4e3b120abee0d791cd64f3ecab1be0a985f5a04c9bf91566b6af9a0705618a7eb7bd34dc71c6e982fe9c684d2fdcaf5ad1f4366c6b1573520b3a43d1575973976e5a2d8342836da61a919fe291d4e06dc8b8047fdaa591db96c5f708d7efc10d0febd2de603998daa218841c38f38c294f79a058c14b8451e970d45b64ab8cfd811e332ca469c1ad1a703c7889b6af2430b5a9a16efb95767cf6e176aeafe1d7f3e207b92316038a694dc77e4f9d423f023e6e92994bcacc8811afd8022cdf24268c646e4f8f1eec0ebd9adf11a338bb0b76bffdfdba5060cd8858c3861c2020a8367b65b272305871501ce9131ba58f4bee28542651ff43e4b044e08eebdac22901166e5a4690335d5c195d0d895470df40c756e553230fb20485f25e6122c131a1c240a8eeeadae8bd743e25aa7445c4d13bcfc2012a3fffd8e71840a73b0fb86e01b189ed98ffaf53317a3be72575c72b3851f5e6d58946ea53c27a2c074de878396bce0f0a8639e4cd188b0c41bc93ddf2e2bc21f4a6a2a5231612f7cefa0735eaf3fc599c018bfb788b0951173df46c9f57ac58a70364a78d4eed63659e80983ff21b441ba041a6e0f83cf5cbb46787f8032f35ee2d35fbf278ff6b0c4742b0c8e9b8b51081b3db97c75feffcf4793b50a774f9fdb8e1df5bc3b337964677d2e7148e31ea866090136940a9670ff492d88b48d7f5a9cebf32b865381303636930ac76c940454bca3060d8f3e4858b55147eccdbcdef80c64b8030498ce8e15420d1ea46c5406a55c89434765232bab57df4fd145a60191eea9b1d634968e0087083db8bd71be34739261753fba1eb47edda8df45c8bef040b152b1da174b1da36f731cd77a3ed39d6ffdd5bd68d4288c4d464e476c136d3ebd379168bf87ac8ba63a8a6a3f2430af352f2c252a0ef3ea2560870aba83ccecdd0e57ce9859821f0e1da1afec294048a1e22cdd02d5685181998ad20b26539aeb8e8fe02da9f3965583cc8109146ba182b6c8c945bc0e3098a353d07f9f28737fc73ecec7d12ac68f51135a617291d57e57a625bc7fc2174560f24a7667d4106c11922815af1fc4bfca24b625ff6953d8255a7771542d2fccaf74195c957faa3328cb7180b12efc3640eeac8dbac1aa55d236904975ea0521d8b3aa792c8c3194eb15497fb68351b2f662e6dcbb03607feb7c2f29456085d96d4dbcfbbcb2828c812f21624a301b648201d27b9e80862189e7f8e81b479301b4a55dc2aa7732b3460001d072f04c96dc34fbe5f7eaa12107dee5c4fcab6977d65d3e5a3cb2b2334fa2ed10a0ff0f02b43a16f5bfb6d4909b70af2b1b1d072e5c8b0a344ade8c7044a2a1ab9a58ff0e629a2345a9633513ac429ba96b8911c227a306fb23769d02b233b869c91abd605e4d13e92f56b13414e8b29e1e9b203154db9380bbfb66c4548df00dc5f3b13909b2bc4e90d5e3a42b6e4d6e8e1eaff7b319179975ae90e3ded62efbac60abbb57f07c348a4eec2032289ac91476297385e0ba3a9bb08de5894baaf7c6a46b4e04e75c10722dc2c5af819638b8d41c163065cd73b8be3ef6c36cbc556fe87b4d35f14211a86fb8800bcf677a17ab8808224ed0ca780338893612a686fd6d44a1b621096477f6f0760abb232d7bdacf9c7811eb0d87d69452f74c7563c583a3972083cefc8ea05513b87f6d0bc52fcca7d1fa02d5f5f06837526597ea38be7c7a4b33f53917e84e7a46021b85d416a6455cba0646a2e8106ca515022355e72f5c5c81d23b2bc2abcc3ed75db75da3301df758f797a61c33bf8bd3711c202da94de304b7ccd1049d58e13190d56627755ab3ebcdd2922bc162240b9be762247423b434122bf5173147ac981beaf9dcf95f0f28601b5d0dcea36ef0f06be3eaf57a86e0523cdc712ed58bbf081ab9ddf9cc404f6dc3e48299d457c79735587d83d64af69bbcdd1c9654514aee10728fb51ac14f5de78152a2e15b7d40189903e1c8f6decc9b9c22590acfc66c2c61028f2d55609a25e0a99beb9b542ad9b0cd8dc60f5eeea600e8567fdf1675bad45b6d10d4ed8f8bbf012ce632d9d1b73be0944eb9b475a1567c21e22f5b5db331cbc0312fa9069fa04aab947a57d28e7620ad728a589ffe214409284b9ae9fecebf5ef5a99aec1efdde05eb7f2bf80ea66cb5f4580e5eb75e8aaccf203b0e8c29275c05c8ed39029b5d74e20b92dd2b2e6525e7e4e7216735d74f7db4cfb4f76083f69bd6cb2f45a29229e38b54f1e4f5a73d579c23119f720e31d39c119f0f07141c4a461a710e28333583538bbcce0e6b06f38efc9dfe99c826c54295362553f87536ef5280016b7df0652a70368a712e3b0d1b3d73d8266d82d519e636548ec28767b9b109584c2a07e2566abe32d0cc509414b1711c53a37f3b7d218ce3bddcd3ce3bdcc2a7544fdf19ec9b6bd5a35fa8a30226ff37fb679138a5aa53f952b3f8b68d9a7eeda49f055804d5d25b10867d8652290d7e96a0c0a64fad854e6935cd1594655617d4c5a70074b0febf8272468f8968876acf52f1be6adc27bd3e730487fe5ae444b7b6c20f24c825474a95a1a739be1650ead9c7cae41718b131d4aa8291fb2dc45f5633f482b6e31aee9fd0432da9065b084e5e58cad91c5f9835c524b093cac7bba5cdcdb70d2dbf3ca0520f5f0dd74212c58c26b4e45122e583b5caef4ccf202a6b3a5ad0de8c9859c82c397b018e7528acb59cfd465b30577a8d4a358b58d0d5e510e1c61a522a4f843d0e580bedd5d97aff93915e756800ca9890e37275659efd87c6f31466e56141a32ec4c789afb3fa942064caabee55587a69f2600e708a9e58eca5f5c2ed0d348cef955a261b0ffda9c51e70f2335dafa3c2e6fc5efe28229c5bfa7a87361bf6fbdc74731b67003b457616ea7bd30aff832b7d18f4367bec3934983c9363adc2b1ce3c63fc4ac0d9a8e15a727b57131ac6d140305dc69b866e4212c6a58ee1ef5734db31e95f08688e8f8f6cb5b1ca4d9579ee09b7f4391e39dd84b2e7b2bc4e3a1d330f4b29426864ee08b59956d688a61aec981062af97b797b9921f8f881b7baaa200b4050769d8ff1a95d5fd1c4063f2f4aa472117429040f1ff2b50e794c2197d472adaef17c8ad035529593e6bde8318d90a16190efe531f4e1c83d317ce279d71711f3dc5b2ca6c2939caedd688927144c8f51da45fcea09b551d1c906585a7663834ee0d6372d2ec5a41af84ac3690aeb2723517dff02fcca3d30fbe33c8845808b2a1975e098d875e4512ffc527a9372a6fa6df55220182c02f22b39295526c40efae0d14eeeeec35e617a6894f58bb51a0d9c621bdc72ccd8bdd8091290a5dbef4675c3cbdff98050eb4bf04eb9a2159ce14bf68f3408e2c482410dd1ee2657477573acca4b9ac702625c0d628682753f2e0146799a62dfce3ec882fefd902e8fb4c67529baec2434154329e1d95dfc5136b3b6e6ba60da0b48cfc9391ac0b055f7f75ab5b2a0e5eb396acb972bd380ed670ace57fba31145609806b2d90e02b2ceba535b3477071021788e2ad746ca1ab7a682093a8e8b183830a0ff3a40fc9f191d3415d050bdbbc9799ea9b1100471e29feff398d251699d5ec8304328e748bfd34ab714ea534a49da85f173af9bda7a0296e511df46cbf86b61e89ef22e6de5a3b0fb9fcbd7115879d1d84f560dccb7e06f9cad4a1c9332aa4861ea97ed6619e839b302eb9602b2b81537815594bd71703b8272876de20f5b08b796eb5985a095a357fedbc513737b74c4a37d6abf063807f54e14d001de8e78f129c646214dc88f5c21c2185000eb359702036d97481bab9756244413530bb67794f8f2edd7be9caedc86bcf6af2127671ab63ff4e6db943200e01b10b01c0b9fc81f851513ee59afe255387fadebfab57b5a152cab4933cef455700091d832384ae3871a91553574b297ed5ddd3f70d04adeb30e1342214435c305cb34159a357d23bdb2635e2abf29ea68e44f5a47f9bdd4c949d9aeb87cabf6b3917cc6bcfec88bc18fb6d62f3ca7a57bf4a960f589fdeb827f482b9f9b05541da8db5ed22b4fb3da5bad8e179dcb72ef378b7c6db26bd5bf10b797e73cb0cc29c7fd96f49d7d01e1bed6e750d35ae86bbe120bae824a089153f395e8c4702adeb83eada5c9ea678c649fd886f5e41173327c47236e7ddee054bdafe36bcfee9ad62909fdc53cddf2b40d0be68a91d774305e4359701aaa95d438cd4dd0b7bf4a3e38bcf3158e71feb46793a5e0cdc8e27e6dbd7f92213d5fb3165a68f411c224774730e9f745a9eacaf32173eebb198a8643bbb90c954734bdcd473bf0d48ca3362ca6788a90fa34aa056ef8d3e41aae3f3500adc509fe1025bc31b526623a30c97d550c2008bf8798042c0aedf3b306d4090af1944592a5793539df69cb33beb42549602fc9f98a9b9d7d4170ebc210e6217908833c5325bcfb9c82b0701cdb8c9653adb1da531e7ee4024efc26041772a28287684d19db5cc16ccc62b2a1b4642a73f44c75797677f6a490888f473c36310f85f51ff83443450f75333f00a4a5ddc4a90d066a44fa3cf763e65765f14d8e3e417f1bd19a6424488e5912ffb9848b66faf05b732f3569dc254cab7dd2bebaac809693f83005ed6e89f3f49ecac10de6aea859675ead7ca6b68ab62a1324627dc7ebfab24132e59eb9c912ff2cde91fa324d0488350b7b6af6187690835258540e9341d0ee1a8699a1f9b4002a5e5c419f75e58f13231415e0987c9bb9deb4780a887a1eeb33e138fbfe4363b397ac3c433b77ccac37ce6bad9101b9919bf3951aaa0e7c079edebfc17633f18d44fbbbaf85a6f906881b265bab9ad8012be7dd4d6a86a49df72d9d7efaf2d99593395e8150f40ea89232f0a974072e965dc420fdf138f7f8bea3963f95dcacef1894033bd5a9f954e1d25cad40a62f382f224b7714e3c57bfc91233314b3802deee382dbbf80fc90714c741ce9417dbecb9039e945f8edc623ca52a095768935106b60756bfe1f5dd0de74636d0467d1460830542b8639bc1c5c6012857950003c2e604204c8ed674e3ecb284aa087308b21ea6b4df7995c6ed8c93aadd7c1cfbb0f4c6a9c043f8556ae2b796ec1977f981cdbd4c1b24543297e7c0af25aa012010e9e6f503264e8df555426b617ceeaf7536548d983ab897a7e0a5c821ea4efbe426c20aaa542270d0dd692a590e230c244a881b883b61ec3bad14dbee6cba17f81f4fd56290d3ca124378a72adf8ad9f9e2af3c6e29987decb125a74a7c6e2bba7244fc7ebc393963be4062a57ec9210919d867729ceb64f7d540d1d5d82bcce83cffc526801435ffee0205a18caf3cf716aeb28d85c5951dd18d7cf8bf5e1e83f84865ebf6e65bdc75ada2fddb2c06620f15595633263a2e053a8a36ea80cae0ab13e5a96cb34f813bf466aeb6a9e8f7b70df5ed563518b96cd253a4a590bbcf21cdbc7c027cec64afd15e52aa97f8a6890e2fd95354572c4371f6e0d8b588c7ecb832d2911f2bfd03407c01d6dc5757ed68a6a037397cd7d0e1d39b644ac7bf286b34c61b8b605e47522d212a1f7471251ff627a935daea7aed047a6bb418c03e41e674897da32d99b69c959a0a956f78b7c787415401eda1f35ced661905adbe1666a928fd1564979a35b2d3962d551c1ce5d44f3627155fc5b3a1be4318ecc41222c712f56d276d800a8f65eada3acd03982f705f970fc7ddb1233ae5e2c2ef2bbdf3780ee8b42878ddffd2152a6083c75bf55b72d095407efb7dccdca556a5bc6ff8fb71335ff8d944ed3a7d82ff982c6212011c7c61c47d4faeb18598111572f605b66d49d00b3b666b808259bf6db62d3b4874a9819ea938c6f60baebeadefce11df20523e628a524d6ded161bdd2f60a67e52e4f20e2b980111daaf4d6c1db53576ac1d599a659bec0e6cfcd665dd3abe6be278ecf1e22f994e25d07937cee04a1ffe90bd9201d91de25535d67d7a5d1ac8bc058afe38dc46a6ca2b7f467dcaedc5cf4957200d64d9cc058e3bf24bae9151c0a4f60a5fbc2ff1df7a442726b73a06b007048e8a2ec1c4ca775374efaa6e38ff210a3c397e67398dd2e97aa26639034a71da887f0880be14dfc5721b99d79bf5fba9d9cfc35a5dfddf9ca58036083e94e68ed5b3147a46edd5cf2f1d3efcd460790890caaf1d08f765bfef6d42e226370c6a63ca1ecc4dee7caecfd8008bcb4b7b2b6d782415c9af164207d3a21421a4412f2f31a703f30c7dadc40735f138195e6778ecc13cce38cdc13fb2d8dd59bdd420e674ca4eaafac2565b61fb1b6a8f658a3bfe1a318cca3c2ea412494d3b484718ce4044da3136cc597767a8339e772ae43f98f2a1d36b1d228eb05cfe29f4b908cb7a3aa322fe2208e7ed1df22732a72a4903a8c91483c4a6a73711ca2cb22eec483780e63f76509f642d4e607fd19a71e182f49a75dd8ab5a55b5423ebdc2cbab0d8df1871ceed5ba14229a79d152813ddd55c7ea9b3b29debd8b4b2d4a15a83441f82a6e07b52fba99b64753e55aa36549954d2bd5fdaa9e151e441f23187d698ab4a0507e32222b3779cb341cd46d43814fd59b230b16bda7dcb789ab3ffa3a43b68063ae40f9a1953c90d96f239819e2abf63d0a853135a23f031726b794730bdd9fbaa512865fd91d4d9e9c61fa89e36137bc4331be7c94167a178b46f60c5a2599ab3d68999d4c14d91b1d4d9d5c1f7174ad5dfe57a3945898753f0a58d6e81d6508ee986ea41ff56cb410ee6b734637b4c8dd24b8e269d1294ae449c418fd4ffb736115a2a83d1e57daca5af10de77d0cf0c1fef985e44676e6f108f3c83caa0d6efbbb4083ff2662cdfe1672af39d2f75d29d4e33c97c3fef76e66c582142af188427ffb4d99a7a1683799764e2f03f84765acf8a1260d56b35355a38b0835b299d34b34f998bc01d41133bc41017128392dadcacc529b09ffdc397cf4340a5ab7e81f623776455576e866dd9736795c5f40a80b52a4f5c07927d811f34b2a4f651b66772209920c491fb740a11dfdae2e3000107c33083fb10f6208372acf2516a40e1dbbfc9dd32fcf3dfcce8e9c81349ca28817d86e56f3603040917690b0a47438d29817f36b190a2581e7a3fcea4895cbab6ad2acca089252fdd2bfea22637502896e011a88d2403ded83f9a067c8172300e3cdd1f10c5f3be6d5123521205d86966f00677f5d589f4cec5766c74420cde42b88ce0901188fa32952e404273f4a62610e77e57222e00a56bda0bc39c48de96fbfb54a6d8a255ef9c73d67efac6fa23a760c1553cdfb74bcbb51dd0f727ea58aaedbfabf96dddfc9cef2f844270268deeeed15da525e775a49fbf5f6f312fe20c3c272a08c919a1f8f60e763156f63a508ec49a5d4ca3d5a8999552562c6058d404db130619d21cb56be4d2c60532c48f5ff3d5c867ca68a86006b4922bacbc598b4267f6fc97840850fff307496441e546847c617f94a223c6dcdba2aa66e7dd71a0b92d09f988dc442b78f5b1b2a84871f4b66698cdce033f7a76595337f1e857c311318374947a9934ca531b1c14df7a6ed0f59fc97064686e37e1fb42a2ac898ddbf68b1763409bd6fb6dc8f720321f5831aef8402e96106ace14bf82ccc3337c1c9bce7f908a5b8141d4f6636278d179014c77b334577d42d28eea6f48680edf2065cc0c3b066c8c0d9cbb301a5b010a8f9d6098c189cc54f22180a3fffa2ede4834117e18b853a833876ee6097c7642aa93a03e0ca2387a84d0f0d1189b35e9f9dfb775646903b33297097bf9d494221c3641dde223c7ef77bd92b1f7ee4feff19950371da95e0b7536985f2410aee2b0ee64c60aeb9e16e40d980e8e91314e16f9e28ed964d8bd2e821a1c9770fe4632a4a1141b68b7270e7906b975e8dc7d15ac972c306b0590d4c73b2ef7cbb58ab00511505d8e32bc7e848bac899bb4e9a4d40998e0e96f72b57b7fa4c421e33b2e8e5e9991931f306048287fa44b0ebfd156cec56c2d4836a21e4d5662ee6bb0a0206a96af3a80d802b414f4903f97f23ef4fae51457b98f48baf8415f5ee004a4ba6a8ad1b162e0de1a6afdf8a73ba12c1897933dffca1ed8f6c7b6c4d76885f07634c6e9e2c427447c5605d1f4c11d1b5cf98fda7078b7755bcb2478796c8b26d986f3411986d4ba6a716216d794301b8a143e7ad1534c31f7e41090d6cf9d952780d5ebad58ad7aa6667a5b6037c8eb7a0806cef0fa14484af3c26f1d55cb9b53adc83762fa3b135af262f09c4c115c5c86cdc9775d89fd13abcb48c5eca2357d76ffc4a061ba230073e788730e1d81acac9558ae7e35b3c7f8cd81c010215b1468abcca7c64b155fe2577245c2ac683887d775d5be883611fad0c8164fc5266a248cd8aba7ce9ff5564f3ecaa18ce233950f01486f4b3b2dd029c41aae68f7dece7b598cb5e17143fdaafdd8dcbbfb3fc1cdcb7d985e4ea7119b2007ff7d401458b6394e6a982388799479f8538521bee5d541357405fc3adfb87eb36dd25993102de747b35b465fbb139c87489cf0e2d5c209ada58461659a9bbd27e223dd7c22e5c83736457db2abd41acfb507c1a695998e3f559c24d98c6fe6c1a2d26c8bb804b9077b7ee5492c0c6d95075fab52d902213b162cc21cc6ec4784ce68479e3a68e18166d5479fc5a3b988b5de4b95b4849922abe6f0bb5fa7f82765bf0be672a770f6b562335bd6776ec30e372b3da332009564e4cd2f7c79c8709c0541094c93402d0cccf13cdb70b994936571bd9664f7de4c7c95cb244e0af44561820383e28d43f4eddfb6ca59b58904433cf177af64b8ff7b5ce0e8c1ccd1140b3a49c95360daae08a66716b5e63ec7c0c41ee9c4e371751ca670eeec72d5a8f3a59c45950fd21d86ca113f7ff806b5acc75488247590c70c064ea11a627c8bfd475b6db7737c8e73aedc539332f8c90e3c651f50d592560f4c457960ab7345a57e066d8f8c42569a088adf6e54b7eece3f561b827531cee0cab06d9485da102e2922561a1ba81fc087337eedc3dbc4d9f25bdcb53a34dd98dd2bb0668a79164b05cc6b9031f1c0168d5735ab083ff0513903fd41a87b1afdad271e3594b49ea98ac8f5da950ad0784fcf926d161481e861d7c7161aadb709d0ad0814369636c8e2e8bd5b0569887f8d09b2acc11911d71e2e98ec90fb79b8b5c8844c19d5aa5f67a59d44472af414cb4f385b179f8d7c33b2214f392f52e41a9137eedc35f3fe3af8abc2608b4005120cb01da724529b273a9b56dd6f2d48a49a3b038a967fad7b85dfd1b13b72384003f99ef34f38872d192929251bdadd2ab077839b22660922952b48af303a7997b5d9e3590f08675463dbaec4f05852d4e8434e21c28a38514f73f2da389d053085c3fa2bde6701010ee45fc7c13c813621cf3c05a5ff9256153194fc608a5b5b790fcb263f80d7f19b65f9df878df4e019b72c7cbb025cdce118a65913ea0046c9338bca9c1439fc63cb2715bb27929516abe9e1d48cd986ac30b8a77172fe99a640c19cfc74825e977d467db140793adcb1bad426d81dbd90d619e3465dad048c4fe30f280cd59d1ad7add9ac1fc14437b8f0dba3a4de858055716c45ec5410f601f1736f9b65bbc15d9390bd07d5d0364acb01fc95e49ebb2d189ac25cfd0f6ef3f08c9ee9bc9ee335348ab", 0x2000, &(0x7f0000000a40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f00000005c0)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8000}}}, 0x0, 0x0, 0x0, 0x0}) syz_mount_image$ext4(&(0x7f00000004c0)='ext2\x00', &(0x7f0000000500)='./file0\x00', 0x0, 0x0, 0x0, 0x100061, &(0x7f00000008c0)) [ 1163.122088][ T9203] loop2: detected capacity change from 0 to 245791 [ 1163.159469][ T9203] F2FS-fs (loop2): invalid crc value [ 1163.178460][ T9203] F2FS-fs (loop2): Found nat_bits in checkpoint [ 1163.378233][ T9203] F2FS-fs (loop2): Mounted with checkpoint version = 7ad43cd6 04:26:34 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) r0 = perf_event_open(&(0x7f0000000080)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x317d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) socketpair$unix(0x1, 0x5, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) sendmsg$unix(r1, &(0x7f0000001a80)={0x0, 0x0, 0x0}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000a00)=[{&(0x7f0000000840)=""/206, 0xce}, {&(0x7f0000000940)=""/174, 0xae}], 0x2, 0x2, 0x6daa) syz_open_procfs(0xffffffffffffffff, &(0x7f0000000240)='uid_map\x00') r2 = perf_event_open(&(0x7f0000000780)={0x1, 0x80, 0x7, 0x20, 0x9, 0x0, 0x0, 0x2, 0x18, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x6, 0x1, @perf_bp={&(0x7f0000000180), 0x7}, 0x10a1, 0x7f, 0x5, 0x4, 0x8, 0x3, 0x5, 0x0, 0x5}, 0x0, 0x8, r0, 0x8) sendfile(r0, 0xffffffffffffffff, &(0x7f00000001c0)=0x37f6, 0x10001) dup2(0xffffffffffffffff, 0xffffffffffffffff) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./file0\x00', 0x4000000, 0x3a, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x400}, {&(0x7f0000010100)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x860}, {&(0x7f0000010300)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xa80}, {&(0x7f0000010400)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0xb80}, {&(0x7f0000010500)="00000000000100"/32, 0x20, 0xec0}, {&(0x7f0000010600)="1020f5f201000b0009000000030000000c0000000900000002000000010000000000000000400000000000000b0000001e0000000200000002000000020000000200000016000000000400000004000000080000000c00000010000000140000030000000100000002000000e0d44fa54ad64de3a0b8e58956bb7b1c00000000", 0x80, 0x1400}, {&(0x7f0000010700)="000000000000000000000000000000000000000000000000000000001c0000006a706700000000006769660000000000706e670000000000617669000000000064697678000000006d703400000000006d703300000000003367700000000000776d760000000000776d6100000000006d706567000000006d6b7600000000006d6f76000000000061737800000000006173660000000000776d78000000000073766900000000007776780000000000776d0000000000006d706700000000006d70650000000000726d0000000000006f676700000000006a70656700000000766964656f00000061706b0000000000736f000000000000636f6c6400000000646200"/288, 0x120, 0x1860}, {&(0x7f0000010900)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1a80}, {&(0x7f0000010a00)='\x00\x00\x00\x00Linux version 5.7.10-1rodete2-amd64 (glinux-team@google.com) (gcc version 9.3.0 (Debian 9.3.0-12), GNU ld (GNU Binutils for Debian) 2.34) #1 SMP Debian 5.7.10-1rodete2 (2020-08-12 > 2018)\x00', 0xc0, 0x1b80}, {&(0x7f0000010b00)="00000000000100"/32, 0x20, 0x1ec0}, {&(0x7f0000010c00)="d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x400000}, {&(0x7f0000010d00)="0000000021000000000000000000000012950c789168613c00000000ae8bfed70000030000000003000000003c00"/64, 0x40, 0x400fe0}, {&(0x7f0000010e00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x4011e0}, {&(0x7f0000010f00)="000000000000000000000002000000000400"/32, 0x20, 0x401240}, {&(0x7f0000011000)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x401280}, {&(0x7f0000011100)="0000000000000010000000001400"/32, 0x20, 0x4012e0}, {&(0x7f0000011200)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x401320}, {&(0x7f0000011300)="00000014000000020c6000"/32, 0x20, 0x401380}, {&(0x7f0000011400)="00000000000000000000000000000000000000000000030000000000000300000000000008000000020000080000000001000800000000020000000000000000", 0x40, 0x4013e0}, {&(0x7f0000011500)="8d070001000000000000009ded0000000000002000edff000000000000000000", 0x20, 0x402000}, {&(0x7f0000011600)="00008c00"/32, 0x20, 0x402e00}, {&(0x7f0000011700)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x402fe0}, {&(0x7f0000011800)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x403fe0}, {&(0x7f0000011900)="0000000000000000000000000000000000000000000000000000000100000000d73cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5010000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x404fe0}, {&(0x7f0000011a00)="00000000000000000000000000000000000000000000000000000000ae8bfed7", 0x20, 0x405fe0}, {&(0x7f0000011b00)="d73cd47aae8bfed700"/32, 0x20, 0x5ff000}, {&(0x7f0000011c00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x5ff040}, {&(0x7f0000011d00)="d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/192, 0xc0, 0x600000}, {&(0x7f0000011e00)="00000000000000000000000000000000000000000000000000000000c889421e0000030000000003000000003c00"/56, 0x38, 0x600fe0}, {&(0x7f0000011f00)="000000000000000000000000000000000000000000000000000000060000000000000800"/64, 0x40, 0x6011e0}, {&(0x7f0000012000)="000000000000000000000002000000000400"/32, 0x20, 0x601240}, {&(0x7f0000012100)="000000000000000000000000000000000000000000000000000e000000040078", 0x20, 0x601280}, {&(0x7f0000012200)="0000000000000010000000001400"/32, 0x20, 0x6012e0}, {&(0x7f0000012300)="000000000000000000000000000000000000000000120000000510ec00000000", 0x20, 0x601320}, {&(0x7f0000012400)="00000014000000020c6000"/32, 0x20, 0x601380}, {&(0x7f0000012500)="00000000000000000000000000000000000000000000030000000000000300000000000008000000000000080000000001000800000000020000000000000000", 0x40, 0x6013e0}, {&(0x7f0000012600)="03000000000000030000000000000400"/32, 0x20, 0x602000}, {&(0x7f0000012700)='\x00\x00p\x00'/32, 0x20, 0x602e00}, {&(0x7f0000012800)="000000000000000000000000000000000000000000000000000000010000000005000000000000060000000000000700000000000008000000000000090000000000000800"/96, 0x60, 0x602fe0}, {&(0x7f0000012900)="0000000000000000000000000000000000000000000000000000000100000000", 0x20, 0x603fe0}, {&(0x7f0000012a00)="0000000000000000000000000000000000000000000000000000000100000000d63cd47a0000000000020000000000000b00000000000000150000001500000010000000140000001200000010000000ffffffffffffffffffffffffffffffffffffffff030006000000000000000000000000000e0000000200000000000000ffffffffffffffffffffffffffffffffffffffff05000000000000000000000000000000c5000000060000000100000007000000070000000a0000004000000040000000fc0f00"/224, 0xe0, 0x604fe0}, {&(0x7f0000012b00)="00000000000000000000000000000000000000000000000000000000c889421e", 0x20, 0x605fe0}, {&(0x7f0000012c00)="d63cd47ac889421e00"/32, 0x20, 0x7ff000}, {&(0x7f0000012d00)="0000000000000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00"/96, 0x60, 0x7ff040}, {&(0x7f0000012e00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000005380000000900000004380000000000000000", 0x60, 0xc00000}, {&(0x7f0000012f00)="0000000000000000000001000000010000000002000000010000000003000000013c00000004000000023c0000000500000000380000000600000001380000000700000002380000000800000003380000000900000004380000000000000000", 0x60, 0xe00000}, {&(0x7f0000013000)="ff0000000000000000000000000000000000000000000000000000000000000000000300000001000200000000030000000200024a8113ed040000000500028dcece4507000000050001baeed06f0800000005000153bfc55008000000050001120052230900000009000100", 0x6c, 0x3001000}, {0x0, 0x0, 0x3800160}, {0x0, 0x0, 0x3801160}, {0x0, 0x0, 0x3801fe0}, {&(0x7f0000013b00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallers\x00'/32, 0x20, 0x380215d}, {0x0}, {0x0, 0x0, 0x3804000}, {&(0x7f0000013f00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00syzkallersyzkallersyzkallersyzkallersyzkallersyzkall', 0x40, 0x3804160}, {&(0x7f0000014000)="0000000000000000090000000900000001000000d33cd47a0000000005380000ed8102010000000000000000020000002823000000000000040000000000000015bc645f", 0x44}, {0x0}, {&(0x7f0000014300)="ed4100005cf90100535f0100030000000010000000000000020000000000", 0x1e, 0x3c01000}, {&(0x7f0000014500)="0000000000000000030000000300000000000000d33cd47a00000000023c0000ed41", 0x22, 0x3c01fe0}], 0x0, &(0x7f0000014900)) tkill(0x0, 0x34) ptrace$cont(0x18, 0x0, 0x0, 0x0) ptrace$setregs(0xd, 0x0, 0x0, &(0x7f0000000080)) tkill(0x0, 0x7) rt_sigqueueinfo(0x0, 0x8, &(0x7f0000000ac0)={0x23, 0x7, 0x7f}) perf_event_open(&(0x7f0000000a40)={0x4, 0x80, 0x9, 0x1, 0x22, 0x4, 0x0, 0x8, 0x32840, 0x3, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x2, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x4, @perf_bp={&(0x7f0000000040), 0x4}, 0x1000, 0x8000, 0xff, 0x0, 0x4, 0x5, 0x8, 0x0, 0x9, 0x0, 0x1000}, 0x0, 0x3, r2, 0xa) [ 1163.510698][ T9089] usb 4-1: reset high-speed USB device number 48 using dummy_hcd [ 1163.590934][T27462] usb 2-1: new high-speed USB device number 12 using dummy_hcd [ 1163.662610][ T9233] loop2: detected capacity change from 0 to 245791 [ 1163.708211][ T9233] F2FS-fs (loop2): invalid crc value [ 1163.738810][ T9233] F2FS-fs (loop2): Found nat_bits in checkpoint [ 1163.850776][T27462] usb 2-1: Using ep0 maxpacket: 16 [ 1163.916964][ T9233] F2FS-fs (loop2): Mounted with checkpoint version = 7ad43cd6 [ 1163.996627][T27462] usb 2-1: config 0 interface 0 altsetting 0 bulk endpoint 0x8A has invalid maxpacket 8 [ 1164.012446][T27462] usb 2-1: config 0 interface 0 altsetting 0 endpoint 0x2 has invalid wMaxPacketSize 0 04:26:35 executing program 3: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) 04:26:35 executing program 2: sendmsg$DEVLINK_CMD_SB_GET(0xffffffffffffffff, 0x0, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) pivot_root(&(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='./file0\x00') mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x200b001, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xfffffdffffffffff, 0xffffffffffffffff, 0x1) r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$TIPC_CMD_SET_NODE_ADDR(0xffffffffffffffff, &(0x7f0000000440)={0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x4000000}, 0x0) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000180)=@dellink={0x34, 0x11, 0x1, 0x0, 0x0, {}, [@IFLA_ALT_IFNAME={0x14, 0x35, 'bond_slave_0\x00'}]}, 0x34}}, 0x0) pivot_root(&(0x7f00000000c0)='./file0\x00', &(0x7f00000001c0)='./file0\x00') preadv(0xffffffffffffffff, 0x0, 0x0, 0x14d, 0x0) setuid(0x0) r1 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_COALESCE(0xffffffffffffffff, &(0x7f0000000400)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000300)={&(0x7f00000002c0)={0x1c, r1, 0x800, 0x70bd2c, 0x25dfdbfd, {{}, {@void, @void}}, [@NL80211_ATTR_COALESCE_RULE_DELAY={0x8, 0x1, 0x9}]}, 0x1c}, 0x1, 0x0, 0x0, 0x80}, 0x1) lstat(0x0, &(0x7f00000004c0)) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x10, 0xffffffffffffffff, 0x0) [ 1164.052908][T27462] usb 2-1: config 0 interface 0 altsetting 0 bulk endpoint 0x2 has invalid maxpacket 0 04:26:35 executing program 0: r0 = socket$nl_xfrm(0x10, 0x3, 0x6) r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000280)=0x5) setuid(r2) sendmsg$nl_xfrm(0xffffffffffffffff, &(0x7f00000001c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x80}, 0xc, &(0x7f0000000140)={0x0}}, 0x0) sendmmsg(r0, &(0x7f0000000180), 0xf1, 0x0) [ 1164.222117][T27462] usb 2-1: New USB device found, idVendor=0436, idProduct=0005, bcdDevice= 1.00 04:26:35 executing program 4: 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) 04:26:35 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) [ 1164.270445][T27462] usb 2-1: New USB device strings: Mfr=2, Product=0, SerialNumber=3 [ 1164.294464][T27462] usb 2-1: Manufacturer: syz [ 1164.299263][T27462] usb 2-1: SerialNumber: syz [ 1164.334491][T27462] usb 2-1: config 0 descriptor?? [ 1164.387863][T27462] ums-sddr09 2-1:0.0: USB Mass Storage device detected [ 1164.444171][T27462] scsi host2: usb-storage 2-1:0.0 [ 1164.509248][ T9264] loop4: detected capacity change from 0 to 1 04:26:35 executing program 0: r0 = socket$nl_xfrm(0x10, 0x3, 0x6) r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000280)=0x5) setuid(r2) sendmsg$nl_xfrm(0xffffffffffffffff, &(0x7f00000001c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x80}, 0xc, &(0x7f0000000140)={0x0}}, 0x0) sendmmsg(r0, &(0x7f0000000180), 0xf1, 0x0) [ 1164.613508][ T9264] ldm_validate_privheads(): Disk read failed. [ 1164.660813][ T9089] usb 4-1: device descriptor read/64, error -71 [ 1164.666859][ T9253] bond0: (slave bond_slave_0): Releasing backup interface [ 1164.669037][ T9276] loop5: detected capacity change from 0 to 1 [ 1164.695127][ T9264] loop4: p2 < > p4 [ 1164.729775][ T9264] loop4: partition table partially beyond EOD, truncated [ 1164.747116][ T9276] ldm_validate_privheads(): Disk read failed. [ 1164.765358][ T9276] loop5: p2 < > p4 [ 1164.785286][ T9276] loop5: partition table partially beyond EOD, truncated [ 1164.796973][ T9276] loop5: p2 size 2 extends beyond EOD, truncated [ 1164.805698][ T9264] loop4: p2 size 2 extends beyond EOD, truncated [ 1164.879294][ T9276] loop5: p4 size 2097152 extends beyond EOD, truncated [ 1164.905636][ T9264] loop4: p4 size 2097152 extends beyond EOD, truncated [ 1164.961593][ T9089] usb 4-1: reset high-speed USB device number 48 using dummy_hcd 04:26:36 executing program 0: r0 = socket$nl_xfrm(0x10, 0x3, 0x6) r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000280)=0x5) setuid(r2) sendmsg$nl_xfrm(0xffffffffffffffff, &(0x7f00000001c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x80}, 0xc, &(0x7f0000000140)={0x0}}, 0x0) sendmmsg(r0, &(0x7f0000000180), 0xf1, 0x0) [ 1165.230773][ T9089] usb 4-1: Using ep0 maxpacket: 16 04:26:36 executing program 2: sendmsg$DEVLINK_CMD_SB_GET(0xffffffffffffffff, 0x0, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) pivot_root(&(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='./file0\x00') mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x200b001, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xfffffdffffffffff, 0xffffffffffffffff, 0x1) r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$TIPC_CMD_SET_NODE_ADDR(0xffffffffffffffff, &(0x7f0000000440)={0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x4000000}, 0x0) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000180)=@dellink={0x34, 0x11, 0x1, 0x0, 0x0, {}, [@IFLA_ALT_IFNAME={0x14, 0x35, 'bond_slave_0\x00'}]}, 0x34}}, 0x0) pivot_root(&(0x7f00000000c0)='./file0\x00', &(0x7f00000001c0)='./file0\x00') preadv(0xffffffffffffffff, 0x0, 0x0, 0x14d, 0x0) setuid(0x0) r1 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_COALESCE(0xffffffffffffffff, &(0x7f0000000400)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000300)={&(0x7f00000002c0)={0x1c, r1, 0x800, 0x70bd2c, 0x25dfdbfd, {{}, {@void, @void}}, [@NL80211_ATTR_COALESCE_RULE_DELAY={0x8, 0x1, 0x9}]}, 0x1c}, 0x1, 0x0, 0x0, 0x80}, 0x1) lstat(0x0, &(0x7f00000004c0)) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x10, 0xffffffffffffffff, 0x0) 04:26:36 executing program 0: r0 = socket$nl_xfrm(0x10, 0x3, 0x6) r1 = socket$inet_udplite(0x2, 0x2, 0x88) getsockopt$sock_cred(r1, 0x1, 0x11, &(0x7f0000000240)={0x0, 0x0}, &(0x7f0000000280)=0x5) setuid(r2) sendmsg$nl_xfrm(0xffffffffffffffff, &(0x7f00000001c0)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x80}, 0xc, &(0x7f0000000140)={0x0}}, 0x0) sendmmsg(r0, &(0x7f0000000180), 0xf1, 0x0) [ 1165.706177][ T9266] usb 2-1: reset high-speed USB device number 12 using dummy_hcd [ 1165.790927][ T9089] usb 4-1: reset high-speed USB device number 48 using dummy_hcd 04:26:37 executing program 1: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) 04:26:37 executing program 2: sendmsg$DEVLINK_CMD_SB_GET(0xffffffffffffffff, 0x0, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) pivot_root(&(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='./file0\x00') mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x200b001, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xfffffdffffffffff, 0xffffffffffffffff, 0x1) r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$TIPC_CMD_SET_NODE_ADDR(0xffffffffffffffff, &(0x7f0000000440)={0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x4000000}, 0x0) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000180)=@dellink={0x34, 0x11, 0x1, 0x0, 0x0, {}, [@IFLA_ALT_IFNAME={0x14, 0x35, 'bond_slave_0\x00'}]}, 0x34}}, 0x0) pivot_root(&(0x7f00000000c0)='./file0\x00', &(0x7f00000001c0)='./file0\x00') preadv(0xffffffffffffffff, 0x0, 0x0, 0x14d, 0x0) setuid(0x0) r1 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_COALESCE(0xffffffffffffffff, &(0x7f0000000400)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000300)={&(0x7f00000002c0)={0x1c, r1, 0x800, 0x70bd2c, 0x25dfdbfd, {{}, {@void, @void}}, [@NL80211_ATTR_COALESCE_RULE_DELAY={0x8, 0x1, 0x9}]}, 0x1c}, 0x1, 0x0, 0x0, 0x80}, 0x1) lstat(0x0, &(0x7f00000004c0)) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x10, 0xffffffffffffffff, 0x0) 04:26:37 executing program 0: r0 = syz_open_dev$sndctrl(&(0x7f0000000040), 0x0, 0x0) r1 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r1, 0x1, r0, &(0x7f00000000c0)) 04:26:37 executing program 3: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) 04:26:37 executing program 5: r0 = openat$loop_ctrl(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = fcntl$dupfd(r0, 0x406, r0) clock_gettime(0x0, &(0x7f0000000040)={0x0, 0x0}) timerfd_settime(r1, 0x0, &(0x7f0000000080)={{r2, r3+60000000}}, &(0x7f0000000180)) clock_gettime(0x0, &(0x7f0000001b80)={0x0, 0x0}) recvmmsg(r1, &(0x7f0000001b00)=[{{&(0x7f0000000280)=@can, 0x80, &(0x7f0000001680)=[{&(0x7f0000000300)=""/232, 0xe8}, {&(0x7f0000000400)=""/145, 0x91}, {&(0x7f00000004c0)=""/7, 0x7}, {&(0x7f0000000500)=""/171, 0xab}, {&(0x7f00000005c0)=""/4096, 0x1000}, {&(0x7f00000015c0)=""/179, 0xb3}], 0x6, &(0x7f0000001700)=""/61, 0x3d}, 0x1}, {{&(0x7f0000001740)=@pppoe, 0x80, &(0x7f0000001a80)=[{&(0x7f00000017c0)=""/231, 0xe7}, {&(0x7f00000018c0)=""/203, 0xcb}, {&(0x7f00000019c0)=""/62, 0x3e}, {&(0x7f0000001a00)=""/30, 0x1e}, {&(0x7f0000001a40)=""/53, 0x35}], 0x5}, 0x401}], 0x2, 0x2000, &(0x7f0000001bc0)={r4, r5+60000000}) r6 = openat$full(0xffffffffffffff9c, &(0x7f0000000000), 0x20900, 0x0) r7 = ioctl$LOOP_CTL_GET_FREE(0xffffffffffffffff, 0x4c82) perf_event_open(&(0x7f0000000100)={0x1, 0x70, 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, 0x4000, 0x0, 0x0, 0x0, 0x4}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r8 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$TIOCL_SETSEL(r8, 0x541c, &(0x7f0000000000)={0x2, {0x3, 0x0, 0x0, 0x400, 0x100}}) ioctl$sock_ifreq(0xffffffffffffffff, 0x0, 0x0) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000200)={0x6, 0x80, 0x8, 0x3f, 0x0, 0x1, 0x0, 0x401, 0xc0014, 0xc, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x7, 0x4, @perf_bp={&(0x7f00000001c0)}, 0x400, 0x1f, 0x5, 0x1, 0x0, 0x3655, 0x5, 0x0, 0x0, 0x0, 0x81b}, 0x0, 0x2, r6, 0x23379927d0169816) ioctl$TIOCL_PASTESEL(r8, 0x541c, &(0x7f00000000c0)) ioctl$LOOP_CTL_REMOVE(0xffffffffffffffff, 0x4c81, r7) ioctl$LOOP_CTL_ADD(r6, 0x4c80, r7) ioctl$LOOP_CTL_ADD(r0, 0x4c80, 0xb) ioctl$LOOP_CTL_REMOVE(r0, 0x4c81, 0xb) 04:26:37 executing program 4: 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) syz_read_part_table(0x0, 0x1d4, &(0x7f0000000200)=[{&(0x7f0000000080)="0af605020314af00031400000000000000000f0000000000000000000500000000004200000000000000000000000000000000000000000000000000200055aa", 0x40, 0x1c0}]) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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)) chdir(0x0) mkdir(&(0x7f0000000f00)='./file0\x00', 0x0) r1 = open(0x0, 0x0, 0x0) mount(&(0x7f0000000540)=ANY=[], &(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='tracefs\x00', 0x0, 0x0) r2 = signalfd(r1, 0x0, 0x0) openat$sndseq(0xffffffffffffff9c, &(0x7f0000000980), 0x800) openat$sndtimer(0xffffffffffffff9c, &(0x7f00000009c0), 0x0) sendmsg$netlink(r2, 0x0, 0x400440c0) accept$inet6(r1, 0x0, &(0x7f0000000000)) ioctl$sock_bt_hidp_HIDPCONNADD(r1, 0x400448c8, &(0x7f00000003c0)={0xffffffffffffffff, r1, 0x7, 0xd5, &(0x7f0000000280)="998c00d29cd6b8f9458ef449e3351712b10a9d74b723bc1c737c72a7dcbe45074f22ebf6a5cccd7b003f8ea10e36ec255063f39cb29a9210be41e84c96f504b8da4e59638efd4b0775f8a27bc40edc0b2b77da5297f2e0e9eb07fe925062adcf9a1d573bf628e8ab47235cd0db3a69012810329e32f03fe14e81fbf3cb1f7e7567c708f6f001efb5abf946f9e983c7b388f65f84f86e4810e7e480ac685a038d1d30de0ffc39e212f6dcbf3368fca4701cd60bb3d8b8f20cd7e2209fa0aad4f56bbd098fb125d756a1eb232dd243914332e3b9f19b", 0xd5, 0x20, 0x0, 0x1000, 0x0, 0x0, 0x10000, 'syz0\x00'}) r3 = syz_open_dev$dri(&(0x7f0000000000), 0x0, 0x0) r4 = openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x408000, 0x0) ioctl$DRM_IOCTL_MODE_CREATE_DUMB(r4, 0xc02064b2, 0x0) ioctl$DRM_IOCTL_RM_MAP(r3, 0x4028641b, 0x0) 04:26:37 executing program 0: r0 = syz_open_dev$sndctrl(&(0x7f0000000040), 0x0, 0x0) r1 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r1, 0x1, r0, &(0x7f00000000c0)) [ 1166.573182][T31388] usb 2-1: USB disconnect, device number 12 [ 1166.642659][ T9336] loop4: detected capacity change from 0 to 1 [ 1166.670493][ T2990] usb 4-1: USB disconnect, device number 48 [ 1166.765286][ T9355] device hsr_slave_0 left promiscuous mode [ 1166.813915][ T9336] ldm_validate_privheads(): Disk read failed. [ 1166.871636][ T9336] loop4: p2 < > p4 [ 1166.875807][ T9336] loop4: partition table partially beyond EOD, truncated [ 1166.884925][ T9355] device hsr_slave_1 left promiscuous mode 04:26:38 executing program 0: r0 = syz_open_dev$sndctrl(&(0x7f0000000040), 0x0, 0x0) r1 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r1, 0x1, r0, &(0x7f00000000c0)) [ 1166.919801][ T9336] loop4: p2 size 2 extends beyond EOD, truncated [ 1166.976125][ T9355] batman_adv: batadv0: Interface deactivated: batadv_slave_0 [ 1166.992157][ T9355] batman_adv: batadv0: Removing interface: batadv_slave_0 04:26:38 executing program 5: r0 = openat$loop_ctrl(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = fcntl$dupfd(r0, 0x406, r0) clock_gettime(0x0, &(0x7f0000000040)={0x0, 0x0}) timerfd_settime(r1, 0x0, &(0x7f0000000080)={{r2, r3+60000000}}, &(0x7f0000000180)) clock_gettime(0x0, &(0x7f0000001b80)={0x0, 0x0}) recvmmsg(r1, &(0x7f0000001b00)=[{{&(0x7f0000000280)=@can, 0x80, &(0x7f0000001680)=[{&(0x7f0000000300)=""/232, 0xe8}, {&(0x7f0000000400)=""/145, 0x91}, {&(0x7f00000004c0)=""/7, 0x7}, {&(0x7f0000000500)=""/171, 0xab}, {&(0x7f00000005c0)=""/4096, 0x1000}, {&(0x7f00000015c0)=""/179, 0xb3}], 0x6, &(0x7f0000001700)=""/61, 0x3d}, 0x1}, {{&(0x7f0000001740)=@pppoe, 0x80, &(0x7f0000001a80)=[{&(0x7f00000017c0)=""/231, 0xe7}, {&(0x7f00000018c0)=""/203, 0xcb}, {&(0x7f00000019c0)=""/62, 0x3e}, {&(0x7f0000001a00)=""/30, 0x1e}, {&(0x7f0000001a40)=""/53, 0x35}], 0x5}, 0x401}], 0x2, 0x2000, &(0x7f0000001bc0)={r4, r5+60000000}) r6 = openat$full(0xffffffffffffff9c, &(0x7f0000000000), 0x20900, 0x0) r7 = ioctl$LOOP_CTL_GET_FREE(0xffffffffffffffff, 0x4c82) perf_event_open(&(0x7f0000000100)={0x1, 0x70, 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, 0x4000, 0x0, 0x0, 0x0, 0x4}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r8 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$TIOCL_SETSEL(r8, 0x541c, &(0x7f0000000000)={0x2, {0x3, 0x0, 0x0, 0x400, 0x100}}) ioctl$sock_ifreq(0xffffffffffffffff, 0x0, 0x0) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000200)={0x6, 0x80, 0x8, 0x3f, 0x0, 0x1, 0x0, 0x401, 0xc0014, 0xc, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x7, 0x4, @perf_bp={&(0x7f00000001c0)}, 0x400, 0x1f, 0x5, 0x1, 0x0, 0x3655, 0x5, 0x0, 0x0, 0x0, 0x81b}, 0x0, 0x2, r6, 0x23379927d0169816) ioctl$TIOCL_PASTESEL(r8, 0x541c, &(0x7f00000000c0)) ioctl$LOOP_CTL_REMOVE(0xffffffffffffffff, 0x4c81, r7) ioctl$LOOP_CTL_ADD(r6, 0x4c80, r7) ioctl$LOOP_CTL_ADD(r0, 0x4c80, 0xb) ioctl$LOOP_CTL_REMOVE(r0, 0x4c81, 0xb) [ 1167.016438][ T9336] loop4: p4 size 2097152 extends beyond EOD, truncated [ 1167.047572][ T9355] batman_adv: batadv0: Interface deactivated: batadv_slave_1 [ 1167.104540][ T9355] batman_adv: batadv0: Removing interface: batadv_slave_1 [ 1167.140764][T31388] usb 2-1: new high-speed USB device number 13 using dummy_hcd [ 1167.157758][ T9355] device bridge_slave_1 left promiscuous mode [ 1167.196306][ T9355] bridge0: port 2(bridge_slave_1) entered disabled state 04:26:38 executing program 0: r0 = syz_open_dev$sndctrl(&(0x7f0000000040), 0x0, 0x0) r1 = epoll_create1(0x0) epoll_ctl$EPOLL_CTL_ADD(r1, 0x1, r0, &(0x7f00000000c0)) [ 1167.220785][ T2990] usb 4-1: new high-speed USB device number 49 using dummy_hcd [ 1167.286813][ T9355] device bridge_slave_0 left promiscuous mode [ 1167.307997][ T9355] bridge0: port 1(bridge_slave_0) entered disabled state [ 1167.373051][ T9355] device veth1_macvtap left promiscuous mode [ 1167.398361][ T9355] device veth0_macvtap left promiscuous mode [ 1167.406415][T31388] usb 2-1: Using ep0 maxpacket: 16 [ 1167.434910][ T9355] device veth1_vlan left promiscuous mode [ 1167.466688][ T9355] device veth0_vlan left promiscuous mode 04:26:38 executing program 5: r0 = openat$loop_ctrl(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = fcntl$dupfd(r0, 0x406, r0) clock_gettime(0x0, &(0x7f0000000040)={0x0, 0x0}) timerfd_settime(r1, 0x0, &(0x7f0000000080)={{r2, r3+60000000}}, &(0x7f0000000180)) clock_gettime(0x0, &(0x7f0000001b80)={0x0, 0x0}) recvmmsg(r1, &(0x7f0000001b00)=[{{&(0x7f0000000280)=@can, 0x80, &(0x7f0000001680)=[{&(0x7f0000000300)=""/232, 0xe8}, {&(0x7f0000000400)=""/145, 0x91}, {&(0x7f00000004c0)=""/7, 0x7}, {&(0x7f0000000500)=""/171, 0xab}, {&(0x7f00000005c0)=""/4096, 0x1000}, {&(0x7f00000015c0)=""/179, 0xb3}], 0x6, &(0x7f0000001700)=""/61, 0x3d}, 0x1}, {{&(0x7f0000001740)=@pppoe, 0x80, &(0x7f0000001a80)=[{&(0x7f00000017c0)=""/231, 0xe7}, {&(0x7f00000018c0)=""/203, 0xcb}, {&(0x7f00000019c0)=""/62, 0x3e}, {&(0x7f0000001a00)=""/30, 0x1e}, {&(0x7f0000001a40)=""/53, 0x35}], 0x5}, 0x401}], 0x2, 0x2000, &(0x7f0000001bc0)={r4, r5+60000000}) r6 = openat$full(0xffffffffffffff9c, &(0x7f0000000000), 0x20900, 0x0) r7 = ioctl$LOOP_CTL_GET_FREE(0xffffffffffffffff, 0x4c82) perf_event_open(&(0x7f0000000100)={0x1, 0x70, 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, 0x4000, 0x0, 0x0, 0x0, 0x4}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r8 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$TIOCL_SETSEL(r8, 0x541c, &(0x7f0000000000)={0x2, {0x3, 0x0, 0x0, 0x400, 0x100}}) ioctl$sock_ifreq(0xffffffffffffffff, 0x0, 0x0) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000200)={0x6, 0x80, 0x8, 0x3f, 0x0, 0x1, 0x0, 0x401, 0xc0014, 0xc, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x7, 0x4, @perf_bp={&(0x7f00000001c0)}, 0x400, 0x1f, 0x5, 0x1, 0x0, 0x3655, 0x5, 0x0, 0x0, 0x0, 0x81b}, 0x0, 0x2, r6, 0x23379927d0169816) ioctl$TIOCL_PASTESEL(r8, 0x541c, &(0x7f00000000c0)) ioctl$LOOP_CTL_REMOVE(0xffffffffffffffff, 0x4c81, r7) ioctl$LOOP_CTL_ADD(r6, 0x4c80, r7) ioctl$LOOP_CTL_ADD(r0, 0x4c80, 0xb) ioctl$LOOP_CTL_REMOVE(r0, 0x4c81, 0xb) [ 1167.480736][ T2990] usb 4-1: Using ep0 maxpacket: 16 04:26:38 executing program 0: r0 = socket$inet_dccp(0x2, 0x6, 0x0) getsockopt$inet_int(r0, 0x10d, 0x10, &(0x7f0000000140), &(0x7f0000000180)=0x4) [ 1167.531390][T31388] usb 2-1: config 0 interface 0 altsetting 0 bulk endpoint 0x8A has invalid maxpacket 8 [ 1167.588287][T31388] usb 2-1: config 0 interface 0 altsetting 0 endpoint 0x2 has invalid wMaxPacketSize 0 [ 1167.601090][ T2990] usb 4-1: config 0 interface 0 altsetting 0 bulk endpoint 0x8A has invalid maxpacket 8 [ 1167.642990][ T2990] usb 4-1: config 0 interface 0 altsetting 0 endpoint 0x2 has invalid wMaxPacketSize 0 [ 1167.677022][T31388] usb 2-1: config 0 interface 0 altsetting 0 bulk endpoint 0x2 has invalid maxpacket 0 [ 1167.710752][ T2990] usb 4-1: config 0 interface 0 altsetting 0 bulk endpoint 0x2 has invalid maxpacket 0 [ 1167.871213][T31388] usb 2-1: New USB device found, idVendor=0436, idProduct=0005, bcdDevice= 1.00 [ 1167.881333][ T2990] usb 4-1: New USB device found, idVendor=0436, idProduct=0005, bcdDevice= 1.00 [ 1167.909875][ T2990] usb 4-1: New USB device strings: Mfr=2, Product=0, SerialNumber=3 [ 1167.924198][T31388] usb 2-1: New USB device strings: Mfr=2, Product=0, SerialNumber=3 [ 1167.943549][ T2990] usb 4-1: Manufacturer: syz [ 1167.958351][T31388] usb 2-1: Manufacturer: syz [ 1167.984714][ T2990] usb 4-1: SerialNumber: syz [ 1167.991826][T31388] usb 2-1: SerialNumber: syz [ 1168.013319][ T2990] usb 4-1: config 0 descriptor?? [ 1168.025835][T31388] usb 2-1: config 0 descriptor?? [ 1168.074722][ T2990] ums-sddr09 4-1:0.0: USB Mass Storage device detected [ 1168.083069][T31388] ums-sddr09 2-1:0.0: USB Mass Storage device detected [ 1168.125413][ T2990] scsi host1: usb-storage 4-1:0.0 [ 1168.136608][T31388] scsi host2: usb-storage 2-1:0.0 [ 1168.524592][ T9355] team0 (unregistering): Port device team_slave_1 removed [ 1168.702791][ T9355] team0 (unregistering): Port device team_slave_0 removed [ 1168.796994][ T9355] bond0 (unregistering): (slave bond_slave_1): Releasing backup interface [ 1169.228670][ T9355] bond0 (unregistering): Released all slaves [ 1169.380819][ T9414] usb 2-1: reset high-speed USB device number 13 using dummy_hcd [ 1169.388756][ T9413] usb 4-1: reset high-speed USB device number 49 using dummy_hcd 04:26:41 executing program 1: r0 = syz_usb_connect(0x0, 0x36, &(0x7f0000000000)=ANY=[@ANYBLOB="00010000e24cb7103604050000010200030109022400010000000009040000026e19150009058a02080000000809050202"], 0x0) syz_usb_control_io$cdc_ecm(r0, 0x0, 0x0) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) syz_usb_control_io$hid(0xffffffffffffffff, 0x0, 0x0) syz_usb_ep_write(0xffffffffffffffff, 0x0, 0x0, 0x0) [ 1170.247191][ T2990] usb 4-1: USB disconnect, device number 49 [ 1170.550764][ T9414] usb 2-1: device descriptor read/64, error -71 [ 1170.758760][ T9433] chnl_net:caif_netlink_parms(): no params data found [ 1170.835163][ T9414] usb 2-1: reset high-speed USB device number 13 using dummy_hcd [ 1170.948425][ T9433] bridge0: port 1(bridge_slave_0) entered blocking state [ 1170.965846][ T9433] bridge0: port 1(bridge_slave_0) entered disabled state [ 1170.979958][ T9433] device bridge_slave_0 entered promiscuous mode [ 1171.000235][ T9433] bridge0: port 2(bridge_slave_1) entered blocking state [ 1171.015949][ T9433] bridge0: port 2(bridge_slave_1) entered disabled state [ 1171.025286][ T9433] device bridge_slave_1 entered promiscuous mode [ 1171.067680][ T9433] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 1171.083837][ T9433] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 1171.093288][ T9414] usb 2-1: Using ep0 maxpacket: 16 [ 1171.128202][ T9433] team0: Port device team_slave_0 added [ 1171.149977][ T9433] team0: Port device team_slave_1 added [ 1171.199284][ T9433] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 1171.209649][ T9433] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 1171.239047][ T9433] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 1171.264995][ T9433] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 1171.274229][ T9433] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 1171.300963][ T9433] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 1171.364526][ T9433] device hsr_slave_0 entered promiscuous mode [ 1171.372774][ T9433] device hsr_slave_1 entered promiscuous mode [ 1171.379264][ T9433] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 1171.388023][ T9433] Cannot create hsr debugfs directory [ 1171.506333][ T9433] bridge0: port 2(bridge_slave_1) entered blocking state [ 1171.513703][ T9433] bridge0: port 2(bridge_slave_1) entered forwarding state [ 1171.521221][ T9433] bridge0: port 1(bridge_slave_0) entered blocking state [ 1171.528270][ T9433] bridge0: port 1(bridge_slave_0) entered forwarding state [ 1171.581793][ T9433] 8021q: adding VLAN 0 to HW filter on device bond0 [ 1171.598736][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready [ 1171.608236][T16378] bridge0: port 1(bridge_slave_0) entered disabled state [ 1171.617657][T16378] bridge0: port 2(bridge_slave_1) entered disabled state [ 1171.626511][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): bond0: link becomes ready [ 1171.641744][ T9433] 8021q: adding VLAN 0 to HW filter on device team0 [ 1171.660775][ T9414] usb 2-1: reset high-speed USB device number 13 using dummy_hcd [ 1171.669838][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_0: link becomes ready [ 1171.685633][T31385] bridge0: port 1(bridge_slave_0) entered blocking state [ 1171.692747][T31385] bridge0: port 1(bridge_slave_0) entered forwarding state [ 1171.726914][T31388] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_1: link becomes ready [ 1171.747079][T31388] bridge0: port 2(bridge_slave_1) entered blocking state [ 1171.754741][T31388] bridge0: port 2(bridge_slave_1) entered forwarding state [ 1171.780412][ T9433] hsr0: Slave A (hsr_slave_0) is not up; please bring it up to get a fully working HSR network [ 1171.794471][ T9433] hsr0: Slave B (hsr_slave_1) is not up; please bring it up to get a fully working HSR network [ 1171.807215][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_team: link becomes ready [ 1171.819954][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready [ 1171.828796][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_team: link becomes ready [ 1171.837974][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready [ 1171.846958][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_hsr: link becomes ready [ 1171.855832][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_0: link becomes ready [ 1171.864760][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_hsr: link becomes ready [ 1171.873402][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_1: link becomes ready [ 1171.890898][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): team0: link becomes ready [ 1171.898757][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): hsr0: link becomes ready [ 1171.915617][ T9433] 8021q: adding VLAN 0 to HW filter on device batadv0 [ 1171.927447][T27284] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1171.936689][T27284] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1172.002014][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_virt_wifi: link becomes ready [ 1172.012563][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_virt_wifi: link becomes ready [ 1172.037477][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_vlan: link becomes ready [ 1172.047441][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_vlan: link becomes ready [ 1172.058025][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): vlan0: link becomes ready [ 1172.066996][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): vlan1: link becomes ready [ 1172.077544][ T9433] device veth0_vlan entered promiscuous mode [ 1172.095839][ T9433] device veth1_vlan entered promiscuous mode [ 1172.123572][T27462] IPv6: ADDRCONF(NETDEV_CHANGE): macvlan0: link becomes ready [ 1172.133341][T27462] IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready [ 1172.143151][T27462] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_macvtap: link becomes ready [ 1172.153133][T27462] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_macvtap: link becomes ready [ 1172.165462][ T9433] device veth0_macvtap entered promiscuous mode [ 1172.177276][ T9433] device veth1_macvtap entered promiscuous mode [ 1172.194457][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.205440][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.215590][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.226878][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.244217][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.280643][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.290501][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.301355][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.311285][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.322660][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.332994][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.343561][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.353460][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1172.363973][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.376404][ T9433] batman_adv: batadv0: Interface activated: batadv_slave_0 [ 1172.387436][T31388] IPv6: ADDRCONF(NETDEV_CHANGE): macvtap0: link becomes ready [ 1172.397304][T31388] IPv6: ADDRCONF(NETDEV_CHANGE): macsec0: link becomes ready [ 1172.406112][T31388] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_0: link becomes ready [ 1172.416043][T31388] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_batadv: link becomes ready [ 1172.427667][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.439328][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.449830][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.461905][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.471860][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.482368][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.493765][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.504352][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.514397][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.525549][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.536192][T31385] Bluetooth: hci3: command 0x0409 tx timeout [ 1172.543483][T14159] usb 2-1: USB disconnect, device number 13 [ 1172.543514][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.560165][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.570431][ T9433] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1172.582364][ T9433] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1172.604886][ T9433] batman_adv: batadv0: Interface activated: batadv_slave_1 [ 1172.620794][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_1: link becomes ready [ 1172.629233][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_batadv: link becomes ready [ 1172.802194][ T1027] wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 1172.812173][ T1027] wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 1172.826370][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 1172.866120][ T1027] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 1172.874802][ T1027] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 1172.887492][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready [ 1173.073149][ T9823] bond0: (slave bond_slave_0): Releasing backup interface 04:26:44 executing program 5: r0 = openat$loop_ctrl(0xffffffffffffff9c, &(0x7f0000000100), 0x0, 0x0) r1 = fcntl$dupfd(r0, 0x406, r0) clock_gettime(0x0, &(0x7f0000000040)={0x0, 0x0}) timerfd_settime(r1, 0x0, &(0x7f0000000080)={{r2, r3+60000000}}, &(0x7f0000000180)) clock_gettime(0x0, &(0x7f0000001b80)={0x0, 0x0}) recvmmsg(r1, &(0x7f0000001b00)=[{{&(0x7f0000000280)=@can, 0x80, &(0x7f0000001680)=[{&(0x7f0000000300)=""/232, 0xe8}, {&(0x7f0000000400)=""/145, 0x91}, {&(0x7f00000004c0)=""/7, 0x7}, {&(0x7f0000000500)=""/171, 0xab}, {&(0x7f00000005c0)=""/4096, 0x1000}, {&(0x7f00000015c0)=""/179, 0xb3}], 0x6, &(0x7f0000001700)=""/61, 0x3d}, 0x1}, {{&(0x7f0000001740)=@pppoe, 0x80, &(0x7f0000001a80)=[{&(0x7f00000017c0)=""/231, 0xe7}, {&(0x7f00000018c0)=""/203, 0xcb}, {&(0x7f00000019c0)=""/62, 0x3e}, {&(0x7f0000001a00)=""/30, 0x1e}, {&(0x7f0000001a40)=""/53, 0x35}], 0x5}, 0x401}], 0x2, 0x2000, &(0x7f0000001bc0)={r4, r5+60000000}) r6 = openat$full(0xffffffffffffff9c, &(0x7f0000000000), 0x20900, 0x0) r7 = ioctl$LOOP_CTL_GET_FREE(0xffffffffffffffff, 0x4c82) perf_event_open(&(0x7f0000000100)={0x1, 0x70, 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, 0x4000, 0x0, 0x0, 0x0, 0x4}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r8 = syz_open_dev$tty1(0xc, 0x4, 0x1) ioctl$TIOCL_SETSEL(r8, 0x541c, &(0x7f0000000000)={0x2, {0x3, 0x0, 0x0, 0x400, 0x100}}) ioctl$sock_ifreq(0xffffffffffffffff, 0x0, 0x0) perf_event_open(0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0) perf_event_open(&(0x7f0000000200)={0x6, 0x80, 0x8, 0x3f, 0x0, 0x1, 0x0, 0x401, 0xc0014, 0xc, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x7, 0x4, @perf_bp={&(0x7f00000001c0)}, 0x400, 0x1f, 0x5, 0x1, 0x0, 0x3655, 0x5, 0x0, 0x0, 0x0, 0x81b}, 0x0, 0x2, r6, 0x23379927d0169816) ioctl$TIOCL_PASTESEL(r8, 0x541c, &(0x7f00000000c0)) ioctl$LOOP_CTL_REMOVE(0xffffffffffffffff, 0x4c81, r7) ioctl$LOOP_CTL_ADD(r6, 0x4c80, r7) ioctl$LOOP_CTL_ADD(r0, 0x4c80, 0xb) ioctl$LOOP_CTL_REMOVE(r0, 0x4c81, 0xb) 04:26:44 executing program 0: r0 = socket$inet_dccp(0x2, 0x6, 0x0) getsockopt$inet_int(r0, 0x10d, 0x10, &(0x7f0000000140), &(0x7f0000000180)=0x4) 04:26:44 executing program 4: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) 04:26:44 executing program 2: sendmsg$DEVLINK_CMD_SB_GET(0xffffffffffffffff, 0x0, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) pivot_root(&(0x7f0000000200)='./file0\x00', &(0x7f0000000240)='./file0\x00') mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x200b001, 0x0) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xfffffdffffffffff, 0xffffffffffffffff, 0x1) r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$TIPC_CMD_SET_NODE_ADDR(0xffffffffffffffff, &(0x7f0000000440)={0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x4000000}, 0x0) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000180)=@dellink={0x34, 0x11, 0x1, 0x0, 0x0, {}, [@IFLA_ALT_IFNAME={0x14, 0x35, 'bond_slave_0\x00'}]}, 0x34}}, 0x0) pivot_root(&(0x7f00000000c0)='./file0\x00', &(0x7f00000001c0)='./file0\x00') preadv(0xffffffffffffffff, 0x0, 0x0, 0x14d, 0x0) setuid(0x0) r1 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000280), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_COALESCE(0xffffffffffffffff, &(0x7f0000000400)={&(0x7f0000000040)={0x10, 0x0, 0x0, 0x1000000}, 0xc, &(0x7f0000000300)={&(0x7f00000002c0)={0x1c, r1, 0x800, 0x70bd2c, 0x25dfdbfd, {{}, {@void, @void}}, [@NL80211_ATTR_COALESCE_RULE_DELAY={0x8, 0x1, 0x9}]}, 0x1c}, 0x1, 0x0, 0x0, 0x80}, 0x1) lstat(0x0, &(0x7f00000004c0)) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x10, 0xffffffffffffffff, 0x0) 04:26:44 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) ioctl$sock_ipv4_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f00000000c0)={'ip_vti0\x00', &(0x7f0000000080)={'syztnl1\x00', 0x0, 0x0, 0x0, 0x0, 0x0, {{0x6, 0x4, 0x0, 0x0, 0x18, 0x0, 0x0, 0x0, 0x4, 0x0, @multicast2, @remote, {[@noop]}}}}}) 04:26:44 executing program 1: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000000200)={0x38, 0x1403, 0x1, 0x0, 0x0, "", [{{0x9, 0x2, 'syz2\x00'}, {0x8, 0x41, 'rxe\x00'}, {0x14, 0x33, 'ipvlan0\x00'}}]}, 0x38}}, 0x0) 04:26:44 executing program 0: r0 = socket$inet_dccp(0x2, 0x6, 0x0) getsockopt$inet_int(r0, 0x10d, 0x10, &(0x7f0000000140), &(0x7f0000000180)=0x4) 04:26:44 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) ioctl$sock_ipv4_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f00000000c0)={'ip_vti0\x00', &(0x7f0000000080)={'syztnl1\x00', 0x0, 0x0, 0x0, 0x0, 0x0, {{0x6, 0x4, 0x0, 0x0, 0x18, 0x0, 0x0, 0x0, 0x4, 0x0, @multicast2, @remote, {[@noop]}}}}}) 04:26:44 executing program 2: r0 = syz_open_dev$ttys(0xc, 0x2, 0x1) ioctl$TIOCSIG(r0, 0x40045436, 0x3) 04:26:44 executing program 5: r0 = openat$rtc(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) fcntl$setstatus(r0, 0x4, 0x2000) 04:26:44 executing program 0: r0 = socket$inet_dccp(0x2, 0x6, 0x0) getsockopt$inet_int(r0, 0x10d, 0x10, &(0x7f0000000140), &(0x7f0000000180)=0x4) 04:26:45 executing program 4: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) 04:26:45 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) ioctl$sock_ipv4_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f00000000c0)={'ip_vti0\x00', &(0x7f0000000080)={'syztnl1\x00', 0x0, 0x0, 0x0, 0x0, 0x0, {{0x6, 0x4, 0x0, 0x0, 0x18, 0x0, 0x0, 0x0, 0x4, 0x0, @multicast2, @remote, {[@noop]}}}}}) 04:26:45 executing program 5: r0 = openat$rtc(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) fcntl$setstatus(r0, 0x4, 0x2000) 04:26:45 executing program 0: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) [ 1174.106994][ T9834] infiniband syz2: set down [ 1174.143867][ T9834] infiniband syz2: added ipvlan0 [ 1174.195972][ T9834] syz-executor.1: vmalloc error: size 4096, page order 0, failed to allocate pages, mode:0xdc0(GFP_KERNEL|__GFP_ZERO), nodemask=(null),cpuset=/,mems_allowed=0-1 04:26:45 executing program 2: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:45 executing program 3: r0 = socket$inet_udplite(0x2, 0x2, 0x88) ioctl$sock_ipv4_tunnel_SIOCADDTUNNEL(r0, 0x89f1, &(0x7f00000000c0)={'ip_vti0\x00', &(0x7f0000000080)={'syztnl1\x00', 0x0, 0x0, 0x0, 0x0, 0x0, {{0x6, 0x4, 0x0, 0x0, 0x18, 0x0, 0x0, 0x0, 0x4, 0x0, @multicast2, @remote, {[@noop]}}}}}) [ 1174.373284][ T9834] CPU: 0 PID: 9834 Comm: syz-executor.1 Not tainted 5.16.0-rc1-syzkaller #0 [ 1174.382375][ T9834] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 1174.392440][ T9834] Call Trace: [ 1174.395718][ T9834] [ 1174.398652][ T9834] dump_stack_lvl+0xcd/0x134 [ 1174.403259][ T9834] warn_alloc.cold+0x87/0x17a [ 1174.407944][ T9834] ? zone_watermark_ok_safe+0x290/0x290 [ 1174.413499][ T9834] ? __kmalloc_node+0x62/0x390 [ 1174.418317][ T9834] ? __vmalloc_node_range+0x574/0xab0 [ 1174.423706][ T9834] __vmalloc_node_range+0x883/0xab0 [ 1174.428919][ T9834] ? vfree_atomic+0xe0/0xe0 [ 1174.433431][ T9834] ? rxe_queue_init+0x28e/0x510 [ 1174.438289][ T9834] vmalloc_user+0x67/0x80 [ 1174.442622][ T9834] ? rxe_queue_init+0x28e/0x510 [ 1174.447475][ T9834] rxe_queue_init+0x28e/0x510 [ 1174.452165][ T9834] rxe_cq_from_init+0x8e/0x360 [ 1174.456940][ T9834] ? rxe_cq_chk_attr+0x1c0/0x1c0 [ 1174.461870][ T9834] ? lockdep_init_map_type+0x2c3/0x7b0 [ 1174.467327][ T9834] ? lockdep_init_map_type+0x2c3/0x7b0 [ 1174.472785][ T9834] rxe_create_cq+0x1fd/0x2d0 [ 1174.477377][ T9834] __ib_alloc_cq+0x278/0x11d0 [ 1174.482228][ T9834] ? ib_poll_handler+0x3c0/0x3c0 [ 1174.487249][ T9834] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1174.493570][ T9834] ? __ib_alloc_pd+0x4cf/0x6d0 [ 1174.498345][ T9834] ib_mad_init_device+0xcc8/0x13f0 [ 1174.503464][ T9834] ? xa_store+0x3c/0x50 [ 1174.507731][ T9834] ? ib_mad_post_receive_mads+0xee0/0xee0 [ 1174.513451][ T9834] ? _down_write_nest_lock+0x150/0x150 [ 1174.518994][ T9834] ? do_raw_spin_unlock+0x171/0x230 [ 1174.524298][ T9834] ? ib_mad_post_receive_mads+0xee0/0xee0 [ 1174.530010][ T9834] add_client_context+0x405/0x5e0 [ 1174.535221][ T9834] ? ib_unregister_driver+0x1d0/0x1d0 [ 1174.540599][ T9834] enable_device_and_get+0x1cd/0x3b0 [ 1174.545880][ T9834] ? add_client_context+0x5e0/0x5e0 [ 1174.551071][ T9834] ? __sanitizer_cov_trace_const_cmp1+0x22/0x80 [ 1174.557305][ T9834] ? __sanitizer_cov_trace_cmp4+0x1c/0x70 [ 1174.563023][ T9834] ? rdma_counter_init+0x1f1/0x3f0 [ 1174.568301][ T9834] ? rxe_ib_get_hw_stats+0xf0/0xf0 [ 1174.573590][ T9834] ib_register_device+0x854/0xb50 [ 1174.578614][ T9834] ? crc32_pclmul_cra_init+0x9/0x50 [ 1174.583814][ T9834] ? alloc_port_data.part.0+0x3d0/0x3d0 [ 1174.589357][ T9834] ? crypto_alloc_tfm_node+0x12b/0x260 [ 1174.594817][ T9834] ? ib_device_set_netdev+0x4dd/0x740 [ 1174.600378][ T9834] rxe_register_device+0x2fe/0x3b0 [ 1174.605677][ T9834] rxe_add+0x1331/0x1710 [ 1174.609972][ T9834] rxe_net_add+0x8c/0xe0 [ 1174.614473][ T9834] rxe_newlink+0xb7/0xe0 [ 1174.618712][ T9834] nldev_newlink+0x30a/0x560 [ 1174.623303][ T9834] ? nldev_set_doit+0x440/0x440 [ 1174.628250][ T9834] ? lock_release+0x720/0x720 [ 1174.632929][ T9834] ? __kernel_text_address+0x9/0x30 [ 1174.638131][ T9834] ? unwind_get_return_address+0x51/0x90 [ 1174.643888][ T9834] ? apparmor_capable+0x1d8/0x460 [ 1174.648966][ T9834] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1174.655411][ T9834] ? ns_capable+0xd9/0x100 [ 1174.659834][ T9834] ? nldev_set_doit+0x440/0x440 [ 1174.664691][ T9834] rdma_nl_rcv_msg+0x36d/0x690 [ 1174.669481][ T9834] ? rdma_nl_multicast+0x320/0x320 [ 1174.674591][ T9834] ? perf_trace_lock+0xeb/0x4d0 [ 1174.679447][ T9834] ? check_path.constprop.0+0x50/0x50 [ 1174.684935][ T9834] rdma_nl_rcv+0x2ee/0x430 [ 1174.689534][ T9834] ? rdma_nl_rcv_msg+0x690/0x690 [ 1174.694477][ T9834] ? netlink_deliver_tap+0x1a2/0xc30 [ 1174.699788][ T9834] ? netlink_deliver_tap+0x1b1/0xc30 [ 1174.705069][ T9834] ? _copy_from_iter+0x12b/0x1320 [ 1174.710116][ T9834] netlink_unicast+0x533/0x7d0 [ 1174.714983][ T9834] ? netlink_attachskb+0x880/0x880 [ 1174.720177][ T9834] ? __sanitizer_cov_trace_const_cmp8+0x1d/0x70 [ 1174.726515][ T9834] ? __sanitizer_cov_trace_const_cmp8+0x1d/0x70 [ 1174.732775][ T9834] ? __phys_addr_symbol+0x2c/0x70 [ 1174.737810][ T9834] ? __sanitizer_cov_trace_cmp8+0x1d/0x70 [ 1174.743529][ T9834] ? __check_object_size+0x16e/0x3f0 [ 1174.748838][ T9834] netlink_sendmsg+0x86d/0xda0 [ 1174.753629][ T9834] ? netlink_unicast+0x7d0/0x7d0 [ 1174.758585][ T9834] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1174.764913][ T9834] ? netlink_unicast+0x7d0/0x7d0 [ 1174.769847][ T9834] sock_sendmsg+0xcf/0x120 [ 1174.774272][ T9834] ____sys_sendmsg+0x6e8/0x810 [ 1174.779036][ T9834] ? kernel_sendmsg+0x50/0x50 [ 1174.783721][ T9834] ? do_recvmmsg+0x6d0/0x6d0 [ 1174.788484][ T9834] ? perf_trace_lock+0xeb/0x4d0 [ 1174.793327][ T9834] ? lock_chain_count+0x20/0x20 [ 1174.798183][ T9834] ? check_path.constprop.0+0x50/0x50 [ 1174.803553][ T9834] ___sys_sendmsg+0xf3/0x170 [ 1174.808149][ T9834] ? sendmsg_copy_msghdr+0x160/0x160 [ 1174.813636][ T9834] ? __fget_files+0x21b/0x3e0 [ 1174.818319][ T9834] ? lock_downgrade+0x6e0/0x6e0 [ 1174.823176][ T9834] ? __fget_files+0x23d/0x3e0 [ 1174.827855][ T9834] ? __fget_light+0xea/0x280 [ 1174.832529][ T9834] ? __sanitizer_cov_trace_const_cmp8+0x1d/0x70 [ 1174.838775][ T9834] __sys_sendmsg+0xe5/0x1b0 [ 1174.843271][ T9834] ? __sys_sendmsg_sock+0x30/0x30 [ 1174.848568][ T9834] ? syscall_enter_from_user_mode+0x21/0x70 [ 1174.854463][ T9834] do_syscall_64+0x35/0xb0 [ 1174.858896][ T9834] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 1174.864788][ T9834] RIP: 0033:0x7f9a5da17ae9 [ 1174.869199][ T9834] 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 [ 1174.888803][ T9834] RSP: 002b:00007f9a5af8d188 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 1174.897210][ T9834] RAX: ffffffffffffffda RBX: 00007f9a5db2af60 RCX: 00007f9a5da17ae9 [ 1174.905172][ T9834] RDX: 0000000000000000 RSI: 0000000020000280 RDI: 0000000000000003 [ 1174.913136][ T9834] RBP: 00007f9a5da71f6d R08: 0000000000000000 R09: 0000000000000000 [ 1174.921135][ T9834] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 1174.929096][ T9834] R13: 00007fffbb7fdcaf R14: 00007f9a5af8d300 R15: 0000000000022000 [ 1174.937099][ T9834] [ 1175.443992][T20791] device hsr_slave_0 left promiscuous mode [ 1175.459999][T20791] device hsr_slave_1 left promiscuous mode [ 1175.491657][T20791] batman_adv: batadv0: Interface deactivated: batadv_slave_0 [ 1175.499215][T20791] batman_adv: batadv0: Removing interface: batadv_slave_0 [ 1175.524529][T20791] batman_adv: batadv0: Interface deactivated: batadv_slave_1 [ 1175.540763][T20791] batman_adv: batadv0: Removing interface: batadv_slave_1 [ 1175.553030][T20791] device bridge_slave_1 left promiscuous mode [ 1175.560823][T20791] bridge0: port 2(bridge_slave_1) entered disabled state [ 1175.571591][T20791] device bridge_slave_0 left promiscuous mode [ 1175.577921][T20791] bridge0: port 1(bridge_slave_0) entered disabled state [ 1175.586927][ T9834] Mem-Info: [ 1175.591078][ T9834] active_anon:32 inactive_anon:190140 isolated_anon:0 [ 1175.591078][ T9834] active_file:5467 inactive_file:52230 isolated_file:0 [ 1175.591078][ T9834] unevictable:777 dirty:543 writeback:0 [ 1175.591078][ T9834] slab_reclaimable:21097 slab_unreclaimable:117951 [ 1175.591078][ T9834] mapped:56801 shmem:9174 pagetables:8642 bounce:0 [ 1175.591078][ T9834] kernel_misc_reclaimable:0 [ 1175.591078][ T9834] free:1158535 free_pcp:16507 free_cma:0 [ 1175.641784][T20791] device veth1_macvtap left promiscuous mode [ 1175.647944][T20791] device veth0_macvtap left promiscuous mode [ 1175.656431][T20791] device veth1_vlan left promiscuous mode [ 1175.665187][T20791] device veth0_vlan left promiscuous mode [ 1175.672404][ T9834] Node 0 active_anon:128kB inactive_anon:759316kB active_file:21868kB inactive_file:208916kB unevictable:1572kB isolated(anon):0kB isolated(file):0kB mapped:227204kB dirty:2172kB writeback:0kB shmem:34244kB shmem_thp: 0kB shmem_pmdmapped: 0kB anon_thp: 522240kB writeback_tmp:0kB kernel_stack:18340kB pagetables:34364kB all_unreclaimable? yes [ 1175.751882][ T9834] Node 1 active_anon:0kB inactive_anon:944kB active_file:0kB inactive_file:4kB unevictable:1536kB isolated(anon):0kB isolated(file):0kB mapped:0kB dirty:0kB writeback:0kB shmem:2452kB shmem_thp: 0kB shmem_pmdmapped: 0kB anon_thp: 0kB writeback_tmp:0kB kernel_stack:16kB pagetables:4kB all_unreclaimable? no [ 1175.787733][ T9834] Node 0 DMA free:15080kB boost:0kB min:200kB low:248kB high:296kB reserved_highatomic:0KB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:15992kB managed:15360kB mlocked:0kB bounce:0kB free_pcp:176kB local_pcp:92kB free_cma:0kB [ 1175.819862][ T9834] lowmem_reserve[]: 0 2645 2645 2645 2645 [ 1175.830753][ T9834] Node 0 DMA32 free:689832kB boost:34816kB min:70492kB low:79408kB high:88324kB reserved_highatomic:0KB active_anon:128kB inactive_anon:758416kB active_file:21868kB inactive_file:208916kB unevictable:1572kB writepending:2172kB present:3129332kB managed:2716764kB mlocked:0kB bounce:0kB free_pcp:44320kB local_pcp:22168kB free_cma:0kB [ 1175.868941][ T9834] lowmem_reserve[]: 0 0 0 0 0 [ 1175.875776][ T9834] Node 0 Normal free:0kB boost:0kB min:4kB low:4kB high:4kB reserved_highatomic:0KB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB writepending:0kB present:1048576kB managed:400kB mlocked:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB [ 1175.904023][ T9834] lowmem_reserve[]: 0 0 0 0 0 [ 1175.908993][ T9834] Node 1 Normal free:3931140kB boost:0kB min:54224kB low:67780kB high:81336kB reserved_highatomic:0KB active_anon:0kB inactive_anon:944kB active_file:0kB inactive_file:4kB unevictable:1536kB writepending:0kB present:4194304kB managed:4117620kB mlocked:0kB bounce:0kB free_pcp:22468kB local_pcp:17704kB free_cma:0kB [ 1175.940184][ T9834] lowmem_reserve[]: 0 0 0 0 0 [ 1175.946049][ T9834] Node 0 DMA: 10*4kB (U) 12*8kB (U) 8*16kB (U) 13*32kB (UE) 7*64kB (UE) 5*128kB (UE) 4*256kB (UE) 4*512kB (UE) 2*1024kB (UE) 2*2048kB (ME) 1*4096kB (M) = 15080kB [ 1175.963442][ T9834] Node 0 DMA32: 10282*4kB (UME) 4599*8kB (UME) 2614*16kB (UME) 1525*32kB (UME) 672*64kB (UME) 250*128kB (UME) 112*256kB (UME) 56*512kB (UM) 38*1024kB (UM) 65*2048kB (UME) 53*4096kB (M) = 690016kB [ 1175.994714][ T9834] Node 0 Normal: 0*4kB 0*8kB 0*16kB 0*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 0kB [ 1176.007427][ T9834] Node 1 Normal: 519*4kB (UME) 349*8kB (UME) 262*16kB (UME) 387*32kB (UME) 303*64kB (UME) 153*128kB (UME) 84*256kB (UME) 26*512kB (UM) 10*1024kB (UM) 4*2048kB (UME) 932*4096kB (UM) = 3931140kB [ 1176.028052][ T9834] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=1048576kB [ 1176.038518][ T9834] Node 0 hugepages_total=6 hugepages_free=2 hugepages_surp=4 hugepages_size=2048kB [ 1176.048578][ T9834] Node 1 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=1048576kB [ 1176.059300][ T9834] Node 1 hugepages_total=2 hugepages_free=2 hugepages_surp=0 hugepages_size=2048kB [ 1176.069362][ T9834] 19103 total pagecache pages [ 1176.074624][ T9834] 0 pages in swap cache [ 1176.078825][ T9834] Swap cache stats: add 0, delete 0, find 0/0 [ 1176.086241][ T9834] Free swap = 0kB [ 1176.090109][ T9834] Total swap = 0kB [ 1176.096909][ T9834] 2097051 pages RAM [ 1176.101405][ T9834] 0 pages HighMem/MovableOnly [ 1176.106163][ T9834] 384515 pages reserved [ 1176.110370][ T9834] 0 pages cma reserved [ 1176.116099][ T9834] rdma_rxe: unable to create cq [ 1176.127454][ T9834] infiniband syz2: Couldn't create ib_mad CQ [ 1176.139207][ T9834] infiniband syz2: Couldn't open port 1 [ 1176.231506][ T9834] RDS/IB: syz2: added [ 1176.235925][ T9834] smc: adding ib device syz2 with port count 1 [ 1176.251177][ T9834] smc: ib device syz2 port 1 has pnetid [ 1176.328654][T20791] team0 (unregistering): Port device team_slave_1 removed [ 1176.347460][T20791] team0 (unregistering): Port device team_slave_0 removed [ 1176.359688][T20791] bond0 (unregistering): (slave bond_slave_1): Releasing backup interface [ 1176.422984][T20791] bond0 (unregistering): Released all slaves [ 1176.532231][ T1224] ieee802154 phy0 wpan0: encryption failed: -22 [ 1176.538555][ T1224] ieee802154 phy1 wpan1: encryption failed: -22 04:26:48 executing program 1: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000000200)={0x38, 0x1403, 0x1, 0x0, 0x0, "", [{{0x9, 0x2, 'syz2\x00'}, {0x8, 0x41, 'rxe\x00'}, {0x14, 0x33, 'ipvlan0\x00'}}]}, 0x38}}, 0x0) 04:26:48 executing program 5: r0 = openat$rtc(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) fcntl$setstatus(r0, 0x4, 0x2000) 04:26:48 executing program 3: r0 = socket$can_raw(0x1d, 0x3, 0x1) setsockopt$CAN_RAW_JOIN_FILTERS(r0, 0x65, 0x6, &(0x7f0000000000), 0x4) 04:26:48 executing program 4: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) 04:26:48 executing program 0: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) 04:26:48 executing program 5: r0 = openat$rtc(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) fcntl$setstatus(r0, 0x4, 0x2000) [ 1177.638012][ T9915] rdma_rxe: already configured on ipvlan0 04:26:48 executing program 3: r0 = socket$can_raw(0x1d, 0x3, 0x1) setsockopt$CAN_RAW_JOIN_FILTERS(r0, 0x65, 0x6, &(0x7f0000000000), 0x4) 04:26:48 executing program 1: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000000200)={0x38, 0x1403, 0x1, 0x0, 0x0, "", [{{0x9, 0x2, 'syz2\x00'}, {0x8, 0x41, 'rxe\x00'}, {0x14, 0x33, 'ipvlan0\x00'}}]}, 0x38}}, 0x0) 04:26:49 executing program 5: io_setup(0x8000, &(0x7f0000000b00)=0x0) r1 = openat$full(0xffffffffffffff9c, &(0x7f00000005c0), 0x0, 0x0) io_submit(r0, 0x2, &(0x7f0000000d00)=[&(0x7f0000000300)={0x0, 0x0, 0x0, 0x0, 0x0, r1, 0x0, 0x2}, 0x0]) [ 1178.115056][ T9933] rdma_rxe: already configured on ipvlan0 04:26:49 executing program 0: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) [ 1178.612281][ T2990] Bluetooth: hci5: command 0x0406 tx timeout [ 1178.798707][ T9903] chnl_net:caif_netlink_parms(): no params data found [ 1179.013443][ T9903] bridge0: port 1(bridge_slave_0) entered blocking state [ 1179.050745][ T9903] bridge0: port 1(bridge_slave_0) entered disabled state [ 1179.080840][ T9903] device bridge_slave_0 entered promiscuous mode [ 1179.113116][ T9903] bridge0: port 2(bridge_slave_1) entered blocking state [ 1179.142471][ T9903] bridge0: port 2(bridge_slave_1) entered disabled state [ 1179.171047][ T9903] device bridge_slave_1 entered promiscuous mode [ 1179.241924][ T9903] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 1179.263916][ T9903] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 1179.468808][ T9903] team0: Port device team_slave_0 added [ 1179.480148][ T9903] team0: Port device team_slave_1 added [ 1179.518710][ T9903] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 1179.526635][ T9903] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 1179.555826][ T9903] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 1179.570068][ T9903] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 1179.590662][ T9903] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem. [ 1179.626872][ T9903] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 1179.671160][ T9903] device hsr_slave_0 entered promiscuous mode [ 1179.677968][ T9903] device hsr_slave_1 entered promiscuous mode [ 1179.685627][ T9903] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 1179.694496][ T9903] Cannot create hsr debugfs directory [ 1179.847671][ T9903] 8021q: adding VLAN 0 to HW filter on device bond0 [ 1179.864633][T16376] IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready [ 1179.873899][T16376] IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready [ 1179.886054][ T9903] 8021q: adding VLAN 0 to HW filter on device team0 [ 1179.898625][ T2990] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready [ 1179.908556][ T2990] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_0: link becomes ready [ 1179.917847][ T2990] bridge0: port 1(bridge_slave_0) entered blocking state [ 1179.925765][ T2990] bridge0: port 1(bridge_slave_0) entered forwarding state [ 1179.936094][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): bridge0: link becomes ready [ 1179.947766][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready [ 1179.957509][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_1: link becomes ready [ 1179.966166][T31385] bridge0: port 2(bridge_slave_1) entered blocking state [ 1179.973592][T31385] bridge0: port 2(bridge_slave_1) entered forwarding state [ 1179.991390][T14180] Bluetooth: hci3: command 0x0409 tx timeout [ 1179.997837][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bond: link becomes ready [ 1180.006842][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bond: link becomes ready [ 1180.016887][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_team: link becomes ready [ 1180.026734][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready [ 1180.035513][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_team: link becomes ready [ 1180.045102][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready [ 1180.054666][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): team0: link becomes ready [ 1180.071205][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_hsr: link becomes ready [ 1180.079537][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_0: link becomes ready [ 1180.093148][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_hsr: link becomes ready [ 1180.101430][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_1: link becomes ready [ 1180.114103][ T9903] IPv6: ADDRCONF(NETDEV_CHANGE): hsr0: link becomes ready [ 1180.133341][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1180.141718][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1180.155309][ T9903] 8021q: adding VLAN 0 to HW filter on device batadv0 [ 1180.216515][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_virt_wifi: link becomes ready [ 1180.227097][T16378] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_virt_wifi: link becomes ready [ 1180.253499][T27284] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_vlan: link becomes ready [ 1180.263294][T27284] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_vlan: link becomes ready [ 1180.272455][ T9903] device veth0_vlan entered promiscuous mode [ 1180.281448][T16376] IPv6: ADDRCONF(NETDEV_CHANGE): vlan0: link becomes ready [ 1180.289111][T16376] IPv6: ADDRCONF(NETDEV_CHANGE): vlan1: link becomes ready [ 1180.304100][ T9903] device veth1_vlan entered promiscuous mode [ 1180.325581][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready [ 1180.338173][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_macvtap: link becomes ready [ 1180.347483][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): macvlan0: link becomes ready [ 1180.360881][ T9903] device veth0_macvtap entered promiscuous mode [ 1180.369971][ T9903] device veth1_macvtap entered promiscuous mode [ 1180.391560][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.402150][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.412468][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.424373][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.434427][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.445410][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.457580][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.468654][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.479062][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.492322][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.504031][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.515081][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.526556][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 1180.537375][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.548454][ T9903] batman_adv: batadv0: Interface activated: batadv_slave_0 [ 1180.558937][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): macvtap0: link becomes ready [ 1180.568389][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_0: link becomes ready [ 1180.577644][T31385] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_batadv: link becomes ready [ 1180.589910][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.602055][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.615669][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.627560][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.638044][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.649130][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.661006][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.671787][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.684404][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.696382][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.706769][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.717642][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.728676][ T9903] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 1180.742249][ T9903] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 1180.753623][ T9903] batman_adv: batadv0: Interface activated: batadv_slave_1 [ 1180.762570][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_1: link becomes ready [ 1180.772274][T14180] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_batadv: link becomes ready [ 1180.864688][T20791] wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 1180.882099][T20791] wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 1180.907424][ T3518] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 1180.909854][T16376] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 1180.927773][ T3518] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 1180.952768][T16376] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready 04:26:52 executing program 2: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:52 executing program 3: r0 = socket$can_raw(0x1d, 0x3, 0x1) setsockopt$CAN_RAW_JOIN_FILTERS(r0, 0x65, 0x6, &(0x7f0000000000), 0x4) 04:26:52 executing program 4: r0 = perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x5a}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r1, &(0x7f0000000480)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x14}}, 0x10) setsockopt$inet_IP_XFRM_POLICY(r1, 0x0, 0x11, &(0x7f0000000080)={{{@in6=@private0, @in=@local}}, {{@in=@loopback, 0x0, 0x33}, 0x0, @in6=@loopback, 0x0, 0x1, 0x0, 0xb7}}, 0xe8) sendmmsg(r1, &(0x7f0000007fc0), 0x800001d, 0x8000000000001f4) ioctl$PERF_EVENT_IOC_SET_FILTER(r0, 0x40082406, &(0x7f0000000000)='\x00') open(&(0x7f0000001340)='./file0\x00', 0x0, 0x0) 04:26:52 executing program 1: r0 = socket$nl_rdma(0x10, 0x3, 0x14) sendmsg$RDMA_NLDEV_CMD_NEWLINK(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000000200)={0x38, 0x1403, 0x1, 0x0, 0x0, "", [{{0x9, 0x2, 'syz2\x00'}, {0x8, 0x41, 'rxe\x00'}, {0x14, 0x33, 'ipvlan0\x00'}}]}, 0x38}}, 0x0) 04:26:52 executing program 5: io_setup(0x8000, &(0x7f0000000b00)=0x0) r1 = openat$full(0xffffffffffffff9c, &(0x7f00000005c0), 0x0, 0x0) io_submit(r0, 0x2, &(0x7f0000000d00)=[&(0x7f0000000300)={0x0, 0x0, 0x0, 0x0, 0x0, r1, 0x0, 0x2}, 0x0]) 04:26:52 executing program 0: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) inotify_init1(0x0) openat$vim2m(0xffffffffffffff9c, &(0x7f00000001c0), 0x2, 0x0) r0 = syz_io_uring_setup(0x222d, &(0x7f0000000180), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000200)=0x0, &(0x7f0000000140)=0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000100)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x5}, 0x0) sendmmsg(0xffffffffffffffff, &(0x7f0000002040)=[{{&(0x7f0000001380)=@in6={0xa, 0x0, 0x0, @private0}, 0x80, 0x0}}], 0x1, 0x0) io_uring_enter(r0, 0x2ff, 0x0, 0x0, 0x0, 0x0) [ 1181.161726][T10309] rdma_rxe: already configured on ipvlan0 04:26:52 executing program 3: r0 = socket$can_raw(0x1d, 0x3, 0x1) setsockopt$CAN_RAW_JOIN_FILTERS(r0, 0x65, 0x6, &(0x7f0000000000), 0x4) 04:26:52 executing program 1: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:52 executing program 2: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:52 executing program 5: io_setup(0x8000, &(0x7f0000000b00)=0x0) r1 = openat$full(0xffffffffffffff9c, &(0x7f00000005c0), 0x0, 0x0) io_submit(r0, 0x2, &(0x7f0000000d00)=[&(0x7f0000000300)={0x0, 0x0, 0x0, 0x0, 0x0, r1, 0x0, 0x2}, 0x0]) 04:26:52 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) getsockopt(r1, 0x400000000000003a, 0x1, &(0x7f00000002c0)=""/187, &(0x7f0000000080)=0xbb) 04:26:52 executing program 1: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:52 executing program 2: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:52 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) getsockopt(r1, 0x400000000000003a, 0x1, &(0x7f00000002c0)=""/187, &(0x7f0000000080)=0xbb) 04:26:53 executing program 4: r0 = io_uring_setup(0x45db, &(0x7f00000009c0)) close_range(r0, 0xffffffffffffffff, 0x0) r1 = epoll_create(0x9) epoll_pwait(r1, &(0x7f00000000c0)=[{}], 0x1, 0x2e13e815, 0x0, 0x0) 04:26:53 executing program 0: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) inotify_init1(0x0) openat$vim2m(0xffffffffffffff9c, &(0x7f00000001c0), 0x2, 0x0) r0 = syz_io_uring_setup(0x222d, &(0x7f0000000180), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000200)=0x0, &(0x7f0000000140)=0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000100)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x5}, 0x0) sendmmsg(0xffffffffffffffff, &(0x7f0000002040)=[{{&(0x7f0000001380)=@in6={0xa, 0x0, 0x0, @private0}, 0x80, 0x0}}], 0x1, 0x0) io_uring_enter(r0, 0x2ff, 0x0, 0x0, 0x0, 0x0) 04:26:53 executing program 5: io_setup(0x8000, &(0x7f0000000b00)=0x0) r1 = openat$full(0xffffffffffffff9c, &(0x7f00000005c0), 0x0, 0x0) io_submit(r0, 0x2, &(0x7f0000000d00)=[&(0x7f0000000300)={0x0, 0x0, 0x0, 0x0, 0x0, r1, 0x0, 0x2}, 0x0]) [ 1182.051478][T14180] Bluetooth: hci3: command 0x041b tx timeout 04:26:53 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) getsockopt(r1, 0x400000000000003a, 0x1, &(0x7f00000002c0)=""/187, &(0x7f0000000080)=0xbb) 04:26:53 executing program 1: r0 = memfd_create(&(0x7f0000000300)='\xfd\x0fm3#/\x00n\xaa\xaa\xe4\x01U\x8b\xc2\f\x03\x19\x9c\x8e\xcb\x90\x00\x00\xaegQ\x0e\x94\\y\x0fU2@\'\x8a\x80\x00$\x12\xfc\xe4.)\x9b\xf2@\xf0\xe0\xdb\x1f\xe6\xb4gc\x13\xda\xf9\xcd7el\xb7\xe6\b\x00\x00\x00\x00\xef\xff\x00vob/~\xc2\x00\b\x00\x00\x00\x00\x00\x00 \xff\xf1\xdem\x9c\xfa\xb4q\xbb\x7fN\xd1\r%;%\xb5\"\xe4\xf1x2\x8a\x19p\x04\\\xaa-\x93\xd1\xc4 )\xbf\x8c\x19\r\x81j\x88d\x9d%\x97\x15\xf0\xab\x86\x90k\x10\xcer\x14\xe0a\xaf\xab\xfe\xd9V\x19\xa5d\x16\x8e]:3\xff\t\xe6\xf7\xb3\xbf\x8e\xc0\xe8\xefd\x88\xddz\xa25)\x17\xef\xfb4\xff\xdb\t\x8e\xeb\x1d\\\xf9\x14\xc7\v\xa8\x89\xdb A\xbaBAj\xfe\x18\xc3-+\xd6\xb0K\xee\x1b+\xc7lA\x84\xa6\xfe\x8bU<&\x1a\xe7m\x86\xb7\xa1A\xf9\x02S)\x1e\xb01TV\xfcB3\x82\x7f\x1b\'nj\x06\b\xb7\xe8] \x87A[y\xdc\x14\f\xcet\x00\x1f\x0f\xef\xca\xcfz\x7f\an0\xebB\xb8}&\xdd\xc9\x12?\xc7zL\x01\r-~\xaa\x80\xec\xc7\xf1\xdf\xf8\x80\\\x1c8\xfe\xc4\xe3\xb0\x90\xcb\x8b1r\x94\x85\xda\xa3\xe1\x13:\xa0\xc9+\xad\x81Ks\xba\xbbC6\xd6\x13\xb5\xe086EzD\x18\xd5\x16\x88E\xc6\xf0A9\xf1u\xb3\x85\x02\x12\\Sp\xf4\x9a\xe8\x96^\xe6\xa8K\x12\b}\xff\xcb{\xc6\xf6\xb4\x8b\xb6\xa8p\xf2\x90\x03\xd6\xb2\xd6Y\xf2\x91\xeeR\v#\xb5)\xb0\x99\x9b-p\xe3\x17\x04\xb0\xdc\x0fk\x11\xe1\x9a\a\x16\xb7\x9b\x88\xfa\x1e`\x84$\xfc\xd7\xf5^X\x98[}\x032\xd0\x84\xdby\x94Vp\xa5\xcd(\xab\xb6\x95sR\xab\xfc\x8c\'\x9c\x16Q\xad\xbc\xb04%\xb7\xe5\x14\xb1`\x87#X\\W`;\'_4\xc5\xc9\x921<\xd9\xad\x9f\x12@!\xfaI\x88\xab\xef\x86\xe9\a>\xdd7\xb7\x8e\x9c0-o\xc9\xec_|\x02\xc8Ru\x95\xa8#U\xd6J\x87\xf6X\xb6{\x11$\x00\xc8\x14\xcb\xd1nK\xd8\xb9\x0e\x9bA\xed\xbcs\x1fS\r\x12O\x83\x15\xcb(\xdb\xb1S\x1f%\x04\x9a\xa0l\xa3}\xe7r\x02\x00\x00\x00\x8aeh;FA\xcdN#\xfb\xb0\xf2\x1e\x0e#J\xd0hB<\xc0\x82A0)p\xe7&B\x82\x83\x83\xd14\x01\xcf\x1b\xa9\x1d\x1ef\x0f\x86(1\xd6l\xd2\x8f\xb0\xd4\xb5\x1ae\xc1p0U\xb8\xb2\x9a\xcbA\x80\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xaf\t\x94\x96\rN\xc9\x90\xbe\xed\x1ad\x14\xe7\x84\t\'\x8b\x00\xdd\xc9\x0f\x14v\xb6\x04\xf2U\xb4\xf6\xbe\xddT\xcb\x00\x00\x00\x00\x00', 0x6) ioctl$FS_IOC_RESVSP(r0, 0x40305828, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x8010002}) mremap(&(0x7f0000005000/0x4000)=nil, 0x4000, 0x1000, 0x0, &(0x7f0000003000/0x1000)=nil) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x6}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) mmap(&(0x7f0000000000/0x7000)=nil, 0x7000, 0x3, 0x97052, r0, 0x0) epoll_ctl$EPOLL_CTL_ADD(0xffffffffffffffff, 0x1, 0xffffffffffffffff, &(0x7f0000000000)) eventfd(0x0) 04:26:53 executing program 4: r0 = io_uring_setup(0x45db, &(0x7f00000009c0)) close_range(r0, 0xffffffffffffffff, 0x0) r1 = epoll_create(0x9) epoll_pwait(r1, &(0x7f00000000c0)=[{}], 0x1, 0x2e13e815, 0x0, 0x0) 04:26:53 executing program 2: r0 = openat$vcsa(0xffffffffffffff9c, &(0x7f0000000600), 0x0, 0x0) io_uring_enter(r0, 0x2786, 0x0, 0x1, &(0x7f0000000140)={[0xedb5]}, 0x8) connect$rxrpc(r0, &(0x7f0000000000)=@in6={0x21, 0x2, 0x2, 0x1c, {0xa, 0x4e22, 0x0, @remote, 0x3}}, 0x24) r1 = socket$nl_generic(0x10, 0x3, 0x10) mkdir(0x0, 0x0) mount$fuse(0x0, 0x0, 0x0, 0x0, 0x0) mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x2001001, 0x0) bind(0xffffffffffffffff, &(0x7f0000000200)=@isdn={0x22, 0x0, 0x0, 0x3}, 0x80) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x800a8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x5}, 0x0, 0xfffffdffffffffff, 0xffffffffffffffff, 0x0) write$FUSE_INIT(0xffffffffffffffff, &(0x7f0000002100)={0x50, 0xffffffffffffffda, 0x0, {0x7, 0x22, 0x0, 0x2200, 0xc5, 0x9, 0xff, 0x1}}, 0x50) syz_emit_ethernet(0x9e, &(0x7f0000000740)={@multicast, @empty, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "001d08", 0x68, 0x3a, 0xff, @dev, @mcast2, {[], @ndisc_ra={0x86, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, [{0x3, 0x9, "a78ce540cd4f791153d5dea6b2590b1c71a8242373244ad2439adc07df0a69748e254c1e4a8a8b3f0ab0c430d3be27df3e34066d42ca0a5c11b37adac15084dbaf736b41e5a80502"}, {0x0, 0x1, "000005000000000000fac600"}]}}}}}}, 0x0) fsetxattr$trusted_overlay_opaque(0xffffffffffffffff, &(0x7f0000000380), 0x0, 0x0, 0x3) pivot_root(&(0x7f0000000080)='./file0\x00', &(0x7f00000000c0)='./file0\x00') r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f00000000c0)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000700)=ANY=[@ANYBLOB="90000000", @ANYRES16=r2, @ANYBLOB="010000000000000000003b00000008000300", @ANYRES32=r3, @ANYBLOB="7100330080800000ffffffffffff0802110000005050505050500000000000000000000000000000640000000006010101010101010005030000002a01003c04000000002d1a00000000000000000000fffffff0000000000000000000000000720603030303031371070000"], 0x90}}, 0x0) 04:26:53 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r1 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) getsockopt(r1, 0x400000000000003a, 0x1, &(0x7f00000002c0)=""/187, &(0x7f0000000080)=0xbb) 04:26:53 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = syz_open_dev$vim2m(&(0x7f0000000240), 0x6, 0x2) write$binfmt_elf64(r0, &(0x7f0000000500)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9c, 0x0, 0x40, 0x0, 0x9, 0x0, 0x38, 0x2, 0x0, 0x3}, [{}], "", ['\x00']}, 0x178) 04:26:53 executing program 4: r0 = io_uring_setup(0x45db, &(0x7f00000009c0)) close_range(r0, 0xffffffffffffffff, 0x0) r1 = epoll_create(0x9) epoll_pwait(r1, &(0x7f00000000c0)=[{}], 0x1, 0x2e13e815, 0x0, 0x0) 04:26:53 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r2, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r2, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="48000000100005e7ffffff00e0ffffff00000000", @ANYRES32=r3, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=ANY=[@ANYBLOB="38000000240007050000004007a2a30005000000", @ANYRES32=r3, @ANYBLOB="00000000ffffffff00000000090001006866736300000000080002"], 0x38}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000200)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000700)=ANY=[@ANYBLOB='<\x00\x00\x00,\x00\'\r\x00'/20, @ANYRES32=r3, @ANYBLOB="0000000045fab1c73470000000000c00420008000200ac14140029145b7cabaa98ffd5ce6385db4bbb4ab6bd46dc3df12e3c34e5aa3989b86cbfc3857b87641368721e8700000100227edc0e3e574680dcf75573281e831ff41f323bbfa4b9bee087fc7eff393e03abef9150e3a3cda3d2aa0d9169ca00ba05d3d50d8c542259283012049f7abb13dadbe789d9028969fb4faba986a785839d603e31cf943fa76952c488f6d06e94c8ed8e553d3c356fc0f913b3d08db40000008000000000000000000000066506a11e8bf08e0b38cb37e27741e359b9f85f8c5ccdd41fc457b120d517e171d9c1cf8a026150efd13ceb5c1b62c9ff8bc9fd5a867c237c95be954f898668e3828ec9898d2432a6438b5751d6dfc7b28921730be1571502ef816d5e3174d6cd08f14ee787ef928445fae0b53d1325cafef2e59d1753350b30ecf5bd1e0a2a71a4552ea5dce8abc7422efc9ec0728f1be987dbc253fd72fc67e8cf892fd1911d760e5944afa0feaa498398d37de43b39d2316c345521631b282dc532d7a85b982f6b7fd1ae6aea5512c7be86a1f2d040842df5c33a58"], 0x3c}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000380)=ANY=[@ANYBLOB='$\x00\x00\x00.\x00)\a\x00'/20, @ANYRES32=r3], 0x24}}, 0x0) ioctl$BTRFS_IOC_ADD_DEV(0xffffffffffffffff, 0x5000940a, &(0x7f0000001480)={{}, "83e8f98d9cfc2531e2568d8a1a52b1eb15489789c292760bb122a5e45cfd0df09a23fcf3856b36d353ef4955cf9c7b77da940d37aa4b42effcc54b580767b66e1e0fd08df189be44735793a48eb56f1dcb31f79c9d8864d466aa6dfc708fcba63a54685de0ce27cb732fc54bda462a234693878857b9f44cd07797244c52a686c98e7822d5535b90b269a40e4f359f5ec28fcf394504c108337a9816122787f2be0cea2c9569c4a09d069b7a9e031d62ddddf83a63fdca24111d87f757f6bde8d6190161cebb5f2d27e2098977079b6950295be4ba061c5b2d63bf81e59fde09370e2b91fe8a7332b5e319bd90b759a4469cddd0be9d8a7eb312b2443722bdbb85325ff069627d28b0c0eca26fca5bb91675bd7aa880754590ecec81ecac4066ff9399a7918705dd18c56ab6a41ca1c4317bc1df7d15c6744adac57af0c8afe8911f7474d0c9ac5f6a37151e1cffb5317c3c9c09ca509d3b18110893e6a529761f4d3eab67517c2bb42e081291df1c195ecaf8b376a9869db729b181068e30c3c990af49c8f8fb2ee9f7f730443b1cf82b5f1e0004c398342cd97a71218571dd545cd635aaaa20fc91d0740a9cece0fcf893c27a42a5bc11c78da627071f1f222b07220c83ed642d3861bd4e434c4cc9b7e2dc7d9e07f6df9223b74ce03cfb31834b38e3e680a459ba9f73c70b8eac45e044e89143c3b5bd73661fbb29a56471ae5e3055111c89b854e2cd54a25b56c6b606b968a9649863a313192c6b43075ceec2c860dd0ea11138a98648c366bd82583ff6ef45f5dea8cf950cfb42c3fbb41e00fe497663dd8906edf54e954c9aa089b1955880bcb0448e7ec44326d07d391975c93905f0827f91a59c23e597903fbeb7d7003edd5c2e4d5913640f9fcfb73c5bbe7d1ead7cd98c007e811e81060b57d7c85a950ae7f7f4354fff97faa93b07fbed0f8ac3080c8bbf7e092690a23c0e4cf874be0e7e87a7ffcce59968931a5160f0a3496a702f418dd8806d324266b6b28f79c6773a35a5d0860aa1e9d316573005b2d1fa98a948373107827f9bbec153847de7a789d7d352b685ef93816a52cb717dfb076452c40fe0bebf4707424fa7999352db419bd5dcda244b60442ddfb86787240891bf45ad9d903306ad57864aa78366f969cf74f72a6be8a26ff49184d1f47ab827948ce9529db29b684250fbd1bde701e2909cb8312d7153081fd2e9a1febafde461047b21340e818a94aed6f072ba7b35126c7e2789cf25fe90d2575f698744bb74f3b80fb780b1630033fd3b3b92e421c7b3517a6f49cd6a982acc4b9823416a512e0a546cfe4d2b2677a405b76027fe201d945264ae5007c18a4cf760c53b3a33b6af115dc4b581f1e54913674dcf082859f20edf0f9ef50bf666fc5771c1a6232c9c00ca45bee2fe75763009766a2ec483c3a9538cf35df01a97892f2708a41ba8485c5372cf8f79fe1545b423b7192cdf6a36e8dedf6a324971b41c81b7087afd932b1d719829fc0fbc35068f1be824e3fdfa7dcd2f3830a3be2d8d040a53246ee8be36fa94e850397a1614b82f759bfaaca47c42170d17a08151e2d971ba3773690dd489c819be258b514a63526188751ea78d7715de79577637cd805b8c6ebbf3c7ebef8ca856d0c847a45e66ed8a0affb3517b7c6582003147b29f6f6e27b4a9a010bbe36ef449bf24cb55d486f9d0f34e7a3c7c86459c41dd0ba8e2a78fc6bab738fc3e8fc679624d363e2269888cc91320fc936dbd4da4c63214caa99429d7742d6116a94de2bec0916258b89a597c9c97c5effae9fa6285bacc7e76ba8401ccd0e42f306b3c130c483ea6904b1a752df5bb06eae0daefb88f1e94e75ab9b8eba41a204521e5d9ea7a94bbecae4a849dcd0644ae802d146f060127c4315c15057cfd69edf983283b15358de22677256eadca7bff3a1baaf7111c1c823aaadb6a63c44a595cbf3a15a3bd1a0c8f144d8e5934cef5f9768d137652f512a73512afdb93246d64c3fef99dc7ea2a0165e65eaf8d5e8139dba1bcc25c86fa79735d9d66ede4beb67ed1ee2eb382000ae0e6d61164c40340ddeabedfc939358b74f1275cfcc611341c8cb39786def4140ded43865eface611ed8cbd57af9975c409b8094d26093a0bb88e0591636915de6a447bdfbcbaed31a2e57e4d2ccaae7a4ade89ae5f115718eff1ae6e1ca9e944ed7657b20ebf1bab83473d18378d946fa2cd2f1ab3df8cf2aed56065f26bc404dc897fa430f2b3b87e1315c3c3adf184b4a4ee38be94323f75d1ee57030ec47f40568926f5a5a07910d57631dd9a98a6ed378e07d59f5fd50615e1bc9364862a4e1c348422f7ca3ce7357965bc6940a233f6afff15dca05b6ac94a2913b19f5a42f8f7d0bcc551023f18cfea81b0f99e9241c594476aebab3f1b674f2d221f52518dadf7dfafb5f37cfb3c89f6eb97374edba60d97e8229cc2f3421312ac2aaa91c7e9e71db4068ab535a34f3134cb007d4d9331306519e2a667c293c6783a25cf4edfc1037e294d2023a7fc8855e460686b402a169c0f8933ef9acb959c67adaf22824176b36b1b36b0ac3c8895a644e050f61b9afb16a1c066bb1f4ec00650f0e4dcf8519fa4574f0206bd008bbe618c1f5f811ec5d0efa487393b5f5d53895e7e213d385d33d867d18eb63e7ea7049c1d54cc19fc6961a9d559509ad25c4009cc934e6673acfec09f07dafb191011a9085dd698850627db9eeeb514874df8ec10d71439fdef71926b395ca566c760aaaac8de6f8c6d9395e07c28c8b4186be57d2e6d443b0ca65ab03d291750ccbd0907b9e29d757bb994d7371e2acfdcdc00247ee2ece77f9b6e0a5871644d1f8bd59f812c3de400467a5f1221e1d15b2966584679194402c40e728d8b036e1f7fff95adbe0cfee6166c031ee01c98f3e2cdd9718c6a4aa9de3511ec3e6eee43a6c014f25eb28a0523e670391a1bd9d6852928c6d5b8810cf42e8dbe5ab8c49410190a31f3019b9b6cd544936a16265a18a5f7ff1c4c0c0773c512d46605fdc7ae67d81c704e8f7613da163fab6027b3848ae3cf537b25a7fcb8e6fd80ee3f41ff0d28e7571de3764bd430f4fa36bf2dec9b28ac9ec95c4d843ae152b263161bf29dca5985a86c3d555380b24c5b79d607c733d1be8410057e690c2259c3516b05937384f40ca40012bc3c6cc08d9d7b1ac93d9becea67b252ef0e3ce3777b6210d2b01384bf8d32ea64b8336c2303a75274cd603df18ef63f5f4a39a3d2db6fed6b3bec8dd404ff41df65b1babd12c060fd9d9d8d5dc2e26301a88d15cbb3c032ce73e719649cd76cc17734feda8998d57eba0c0002c914ba6989bf6a5ee6da43d2bc5a074ad273b36be12174d2e2ea636ef8cb45713ad8cb908d412bbffa96c273f62205b84b853b636fee69f26dab76c0ea299323b9aabcd47642b831067ca3e5710f6a5e91c7785364063c50f48032e3da2138f6c24ab55ddaedf585e510aa0bfaa9cb549a3be21b742ca20fb6af6a60bf0781e2dc449526d236f0bb027e72252bffebbaed71bf53b26cbd3c1f9164d236c1fb77b992c0a1c40757e9adbf241327042471e08f8df1ddc3517ac5645e21a9d45d82af0ed5459e04d8d2fa74420d3dabdfca5f128c2fdb62f257fb37556a89a930b8e0bb4a021c9ed90b89dfc968a7803af2d97c873a48b6b7d5a89fd0573d56c3f0e438456729f8a94bea056e750fe649f4030f9f097bbba14baa0040ac1925735b5d968225e97c24e2e252da090ca6d834574144cebf6d6db4b3dd54abf5829c405219ba5d4f9e4d4836146b8bb348ec1d28dd812d0d806e92079ba5dcbc56c7fb6b95e60601cebef0f504a94d15dd22c4922f2ff9f144f41beffdc6a20b16e5c76c1e0104efda32afd75507328d3f560168f01ebb568d97287e86f955e48f7b1162da3aa641435aec7e1eae9db99ddfeeee0566f196be4e17078a4a5ccfb5dd70bf74ca7f5480266786c802287b3f8cc9b004626607da6042a8f23b75defc2fefdfcd7b9842252643c2f0dad8ef8db5d4b8f367866edd2c668694a906f4946aa2a53c6b95773c3e2347b972907ac2165133de9cfd9a862bace34c8a3bd54dd7c8fa426ed9331f8e7cbb976b7c88a709884a9f75f7e7a43947a3534077968a049b26ca52ed4bc5391184e6abd8830ee73927ceeb31824e68d6e11b932597c35ba531e3371aec77df456c5b7e5226b3a19a6f1ef1d72786a1a1eb586392085b4e6dad5dcfad3b2d04fea2b271bcd400cf314ca77170e349cca04b4e25f16c10630fbc25c494fe1ebead95227c7a554ede0ce8eb3d9eac8da44f7cb0f278cee2849229a35341ef8c443337a19644f68b1a77bc91803e9c069fdd06e128c12ffd22590e552b449cf89562c12b275775cab70d619f213e050f5145e527c3119aeb056f7789953b9dc6b6ca15aab7c00b19065b22332e4958c8a7039795eb1c64c844c56019143b02735916213549c7d7a51826eb76623a4c257779b410f1f515c95fea3394918286b0afb3277cbbf7f7d18cde17bdf49ba4039ad1b1654dd92f570fdb616d26053a2b8a52ec5f80931bd1c76ea4c0ecb2c68db38955acf79787aa0eff20f134eb434c799404c5517048d09fa5aee21c7f1aa8e1b8dc075e673f6051215af6f4b10f209202b4b6c9e93a483d9bed3d52d2156ca0c6493aff28d11d3a39a2dee14f5d5b8e995415fe0845f1b716c149ad5486e3a82430fe53915bec428685cd966008cea667321e23b5f0860e9b592d0081c2341113f9ca710bd6e0dc19e79c3562815ffbcf5493c58caf6ac9f364ee8b2be9ebedce546ff77785e899c5cffca272c97f302dcba9be665be181f4c9c28f2c1562c602185cbb28c3f794e7f4671eb45f72793a7a9ee9e182cb9e18ddab2b006fb3172657c073a09c6274220a83436bd7e236e29b23f5b8ab45a843ba0e5ac09b55d87d9f768b55d0e39ab1a103aa1fd244fa7f10c129803e8122498e96e91c8f7c941ce7553cf80a4d7bc66ff1df683443ba66af77dfe166269988e0363876ff77f7831e57ec51ac95ed7f7f24483f59f4b21d11b79d25dc72a7a948a4a608c5fefd69f1c7b80663945f546480e6e8718bd25ad6a2ab27a22b2d8f2df73e89b9d56ef1a5580f8fd65385bab11db20ea070e1b6367644d65ab4fdc505152ad1f025af6870470c846f340ce396c8206ab83e1f256ffab4fe02a0504657502b3e79595c471ef46aee638e4a9059e5071c14aad5872d3fb420e37b04f68715a513b3b0b86e624da084dc983b15a262d6b8d7268d3cd10f908ec9a2bda65538cc9c347ee5ce7876405a70e00b085cde396d43f47bf9a2d93e630ae91a8638034de63549cebe8012c63f498e6b65ee20297fdd2f3fbb99935d34c9872b9374549d836bdf257bdbfd510f387601fae6164b629289cae3d2aeeaf82373f482405bd70ebd1d8e07ca094f24cfeb61d89a8d8ff9553f83022f433800d70339fe4680f001815344ae623519ea88034c788612a84daa4bd823b86f4149c813ef62f803ffd76b41372af1359f15e394eea093e654883d7ebef38e7e5f5276264ace2d441ca74e60524013c39c10ea4526d603fdc0340d2fb08e6532aa5b64621993bd5a76d95035bedf51ae4b9b11bf94ec82bc882663af800cf227ca5fff968b9ff42d9ec094c4e4d1acd887166753688d9307ab961b64acb16836ecac4c02e4c4daebfa4ec00a0684565df2025aafd10efd46b79d58be84494d7a04490ae797490109308922f455877c0d4"}) sendmsg$nl_route(r1, &(0x7f0000000540)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f0000000500)={&(0x7f0000000480)=@ipv6_newrule={0x7c, 0x20, 0x100, 0x70bd2b, 0x25dfdbff, {0xa, 0x10, 0x80, 0x0, 0xce, 0x0, 0x0, 0x0, 0xd}, [@FIB_RULE_POLICY=@FRA_FWMASK={0x8, 0x10, 0x80000000}, @FRA_SRC={0x14, 0x2, @private0}, @FRA_SRC={0x14, 0x2, @private1={0xfc, 0x1, '\x00', 0x1}}, @FRA_DST={0x14, 0x1, @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}}, @FIB_RULE_POLICY=@FRA_IP_PROTO={0x5, 0x16, 0xc}, @FRA_DST={0x14, 0x1, @empty}]}, 0x7c}, 0x1, 0x0, 0x0, 0x40048c1}, 0x10) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r4 = socket$kcm(0x10, 0x2, 0x0) sendmsg$kcm(r4, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000080)=[{&(0x7f00000002c0)="2e00000010008108040f80ecdb4cb9100a4803002e000000e8bd741d42c814000e000100240248ff050005001201", 0x2e}], 0x1, 0x0, 0x0, 0xa}, 0x0) 04:26:53 executing program 2: r0 = openat$vcsa(0xffffffffffffff9c, &(0x7f0000000600), 0x0, 0x0) io_uring_enter(r0, 0x2786, 0x0, 0x1, &(0x7f0000000140)={[0xedb5]}, 0x8) connect$rxrpc(r0, &(0x7f0000000000)=@in6={0x21, 0x2, 0x2, 0x1c, {0xa, 0x4e22, 0x0, @remote, 0x3}}, 0x24) r1 = socket$nl_generic(0x10, 0x3, 0x10) mkdir(0x0, 0x0) mount$fuse(0x0, 0x0, 0x0, 0x0, 0x0) mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x2001001, 0x0) bind(0xffffffffffffffff, &(0x7f0000000200)=@isdn={0x22, 0x0, 0x0, 0x3}, 0x80) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x800a8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x5}, 0x0, 0xfffffdffffffffff, 0xffffffffffffffff, 0x0) write$FUSE_INIT(0xffffffffffffffff, &(0x7f0000002100)={0x50, 0xffffffffffffffda, 0x0, {0x7, 0x22, 0x0, 0x2200, 0xc5, 0x9, 0xff, 0x1}}, 0x50) syz_emit_ethernet(0x9e, &(0x7f0000000740)={@multicast, @empty, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "001d08", 0x68, 0x3a, 0xff, @dev, @mcast2, {[], @ndisc_ra={0x86, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, [{0x3, 0x9, "a78ce540cd4f791153d5dea6b2590b1c71a8242373244ad2439adc07df0a69748e254c1e4a8a8b3f0ab0c430d3be27df3e34066d42ca0a5c11b37adac15084dbaf736b41e5a80502"}, {0x0, 0x1, "000005000000000000fac600"}]}}}}}}, 0x0) fsetxattr$trusted_overlay_opaque(0xffffffffffffffff, &(0x7f0000000380), 0x0, 0x0, 0x3) pivot_root(&(0x7f0000000080)='./file0\x00', &(0x7f00000000c0)='./file0\x00') r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f00000000c0)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000700)=ANY=[@ANYBLOB="90000000", @ANYRES16=r2, @ANYBLOB="010000000000000000003b00000008000300", @ANYRES32=r3, @ANYBLOB="7100330080800000ffffffffffff0802110000005050505050500000000000000000000000000000640000000006010101010101010005030000002a01003c04000000002d1a00000000000000000000fffffff0000000000000000000000000720603030303031371070000"], 0x90}}, 0x0) 04:26:53 executing program 0: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) inotify_init1(0x0) openat$vim2m(0xffffffffffffff9c, &(0x7f00000001c0), 0x2, 0x0) r0 = syz_io_uring_setup(0x222d, &(0x7f0000000180), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000200)=0x0, &(0x7f0000000140)=0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000100)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x5}, 0x0) sendmmsg(0xffffffffffffffff, &(0x7f0000002040)=[{{&(0x7f0000001380)=@in6={0xa, 0x0, 0x0, @private0}, 0x80, 0x0}}], 0x1, 0x0) io_uring_enter(r0, 0x2ff, 0x0, 0x0, 0x0, 0x0) 04:26:53 executing program 3: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) 04:26:53 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = syz_open_dev$vim2m(&(0x7f0000000240), 0x6, 0x2) write$binfmt_elf64(r0, &(0x7f0000000500)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9c, 0x0, 0x40, 0x0, 0x9, 0x0, 0x38, 0x2, 0x0, 0x3}, [{}], "", ['\x00']}, 0x178) 04:26:53 executing program 4: r0 = io_uring_setup(0x45db, &(0x7f00000009c0)) close_range(r0, 0xffffffffffffffff, 0x0) r1 = epoll_create(0x9) epoll_pwait(r1, &(0x7f00000000c0)=[{}], 0x1, 0x2e13e815, 0x0, 0x0) [ 1182.773081][T10374] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1182.985426][T10380] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1183.006687][T10379] input: syz0 as /devices/virtual/input/input34 04:26:54 executing program 0: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) inotify_init1(0x0) openat$vim2m(0xffffffffffffff9c, &(0x7f00000001c0), 0x2, 0x0) r0 = syz_io_uring_setup(0x222d, &(0x7f0000000180), &(0x7f0000002000/0x2000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000000200)=0x0, &(0x7f0000000140)=0x0) syz_io_uring_submit(r1, r2, &(0x7f0000000100)=@IORING_OP_POLL_ADD={0x6, 0x0, 0x0, @fd_index=0x5}, 0x0) sendmmsg(0xffffffffffffffff, &(0x7f0000002040)=[{{&(0x7f0000001380)=@in6={0xa, 0x0, 0x0, @private0}, 0x80, 0x0}}], 0x1, 0x0) io_uring_enter(r0, 0x2ff, 0x0, 0x0, 0x0, 0x0) 04:26:54 executing program 2: r0 = openat$vcsa(0xffffffffffffff9c, &(0x7f0000000600), 0x0, 0x0) io_uring_enter(r0, 0x2786, 0x0, 0x1, &(0x7f0000000140)={[0xedb5]}, 0x8) connect$rxrpc(r0, &(0x7f0000000000)=@in6={0x21, 0x2, 0x2, 0x1c, {0xa, 0x4e22, 0x0, @remote, 0x3}}, 0x24) r1 = socket$nl_generic(0x10, 0x3, 0x10) mkdir(0x0, 0x0) mount$fuse(0x0, 0x0, 0x0, 0x0, 0x0) mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x2001001, 0x0) bind(0xffffffffffffffff, &(0x7f0000000200)=@isdn={0x22, 0x0, 0x0, 0x3}, 0x80) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x800a8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x5}, 0x0, 0xfffffdffffffffff, 0xffffffffffffffff, 0x0) write$FUSE_INIT(0xffffffffffffffff, &(0x7f0000002100)={0x50, 0xffffffffffffffda, 0x0, {0x7, 0x22, 0x0, 0x2200, 0xc5, 0x9, 0xff, 0x1}}, 0x50) syz_emit_ethernet(0x9e, &(0x7f0000000740)={@multicast, @empty, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "001d08", 0x68, 0x3a, 0xff, @dev, @mcast2, {[], @ndisc_ra={0x86, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, [{0x3, 0x9, "a78ce540cd4f791153d5dea6b2590b1c71a8242373244ad2439adc07df0a69748e254c1e4a8a8b3f0ab0c430d3be27df3e34066d42ca0a5c11b37adac15084dbaf736b41e5a80502"}, {0x0, 0x1, "000005000000000000fac600"}]}}}}}}, 0x0) fsetxattr$trusted_overlay_opaque(0xffffffffffffffff, &(0x7f0000000380), 0x0, 0x0, 0x3) pivot_root(&(0x7f0000000080)='./file0\x00', &(0x7f00000000c0)='./file0\x00') r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f00000000c0)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000700)=ANY=[@ANYBLOB="90000000", @ANYRES16=r2, @ANYBLOB="010000000000000000003b00000008000300", @ANYRES32=r3, @ANYBLOB="7100330080800000ffffffffffff0802110000005050505050500000000000000000000000000000640000000006010101010101010005030000002a01003c04000000002d1a00000000000000000000fffffff0000000000000000000000000720603030303031371070000"], 0x90}}, 0x0) 04:26:54 executing program 4: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) 04:26:54 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = syz_open_dev$vim2m(&(0x7f0000000240), 0x6, 0x2) write$binfmt_elf64(r0, &(0x7f0000000500)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9c, 0x0, 0x40, 0x0, 0x9, 0x0, 0x38, 0x2, 0x0, 0x3}, [{}], "", ['\x00']}, 0x178) 04:26:54 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r2, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r2, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="48000000100005e7ffffff00e0ffffff00000000", @ANYRES32=r3, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=ANY=[@ANYBLOB="38000000240007050000004007a2a30005000000", @ANYRES32=r3, @ANYBLOB="00000000ffffffff00000000090001006866736300000000080002"], 0x38}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000200)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000700)=ANY=[@ANYBLOB='<\x00\x00\x00,\x00\'\r\x00'/20, @ANYRES32=r3, @ANYBLOB="0000000045fab1c73470000000000c00420008000200ac14140029145b7cabaa98ffd5ce6385db4bbb4ab6bd46dc3df12e3c34e5aa3989b86cbfc3857b87641368721e8700000100227edc0e3e574680dcf75573281e831ff41f323bbfa4b9bee087fc7eff393e03abef9150e3a3cda3d2aa0d9169ca00ba05d3d50d8c542259283012049f7abb13dadbe789d9028969fb4faba986a785839d603e31cf943fa76952c488f6d06e94c8ed8e553d3c356fc0f913b3d08db40000008000000000000000000000066506a11e8bf08e0b38cb37e27741e359b9f85f8c5ccdd41fc457b120d517e171d9c1cf8a026150efd13ceb5c1b62c9ff8bc9fd5a867c237c95be954f898668e3828ec9898d2432a6438b5751d6dfc7b28921730be1571502ef816d5e3174d6cd08f14ee787ef928445fae0b53d1325cafef2e59d1753350b30ecf5bd1e0a2a71a4552ea5dce8abc7422efc9ec0728f1be987dbc253fd72fc67e8cf892fd1911d760e5944afa0feaa498398d37de43b39d2316c345521631b282dc532d7a85b982f6b7fd1ae6aea5512c7be86a1f2d040842df5c33a58"], 0x3c}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000380)=ANY=[@ANYBLOB='$\x00\x00\x00.\x00)\a\x00'/20, @ANYRES32=r3], 0x24}}, 0x0) ioctl$BTRFS_IOC_ADD_DEV(0xffffffffffffffff, 0x5000940a, &(0x7f0000001480)={{}, "83e8f98d9cfc2531e2568d8a1a52b1eb15489789c292760bb122a5e45cfd0df09a23fcf3856b36d353ef4955cf9c7b77da940d37aa4b42effcc54b580767b66e1e0fd08df189be44735793a48eb56f1dcb31f79c9d8864d466aa6dfc708fcba63a54685de0ce27cb732fc54bda462a234693878857b9f44cd07797244c52a686c98e7822d5535b90b269a40e4f359f5ec28fcf394504c108337a9816122787f2be0cea2c9569c4a09d069b7a9e031d62ddddf83a63fdca24111d87f757f6bde8d6190161cebb5f2d27e2098977079b6950295be4ba061c5b2d63bf81e59fde09370e2b91fe8a7332b5e319bd90b759a4469cddd0be9d8a7eb312b2443722bdbb85325ff069627d28b0c0eca26fca5bb91675bd7aa880754590ecec81ecac4066ff9399a7918705dd18c56ab6a41ca1c4317bc1df7d15c6744adac57af0c8afe8911f7474d0c9ac5f6a37151e1cffb5317c3c9c09ca509d3b18110893e6a529761f4d3eab67517c2bb42e081291df1c195ecaf8b376a9869db729b181068e30c3c990af49c8f8fb2ee9f7f730443b1cf82b5f1e0004c398342cd97a71218571dd545cd635aaaa20fc91d0740a9cece0fcf893c27a42a5bc11c78da627071f1f222b07220c83ed642d3861bd4e434c4cc9b7e2dc7d9e07f6df9223b74ce03cfb31834b38e3e680a459ba9f73c70b8eac45e044e89143c3b5bd73661fbb29a56471ae5e3055111c89b854e2cd54a25b56c6b606b968a9649863a313192c6b43075ceec2c860dd0ea11138a98648c366bd82583ff6ef45f5dea8cf950cfb42c3fbb41e00fe497663dd8906edf54e954c9aa089b1955880bcb0448e7ec44326d07d391975c93905f0827f91a59c23e597903fbeb7d7003edd5c2e4d5913640f9fcfb73c5bbe7d1ead7cd98c007e811e81060b57d7c85a950ae7f7f4354fff97faa93b07fbed0f8ac3080c8bbf7e092690a23c0e4cf874be0e7e87a7ffcce59968931a5160f0a3496a702f418dd8806d324266b6b28f79c6773a35a5d0860aa1e9d316573005b2d1fa98a948373107827f9bbec153847de7a789d7d352b685ef93816a52cb717dfb076452c40fe0bebf4707424fa7999352db419bd5dcda244b60442ddfb86787240891bf45ad9d903306ad57864aa78366f969cf74f72a6be8a26ff49184d1f47ab827948ce9529db29b684250fbd1bde701e2909cb8312d7153081fd2e9a1febafde461047b21340e818a94aed6f072ba7b35126c7e2789cf25fe90d2575f698744bb74f3b80fb780b1630033fd3b3b92e421c7b3517a6f49cd6a982acc4b9823416a512e0a546cfe4d2b2677a405b76027fe201d945264ae5007c18a4cf760c53b3a33b6af115dc4b581f1e54913674dcf082859f20edf0f9ef50bf666fc5771c1a6232c9c00ca45bee2fe75763009766a2ec483c3a9538cf35df01a97892f2708a41ba8485c5372cf8f79fe1545b423b7192cdf6a36e8dedf6a324971b41c81b7087afd932b1d719829fc0fbc35068f1be824e3fdfa7dcd2f3830a3be2d8d040a53246ee8be36fa94e850397a1614b82f759bfaaca47c42170d17a08151e2d971ba3773690dd489c819be258b514a63526188751ea78d7715de79577637cd805b8c6ebbf3c7ebef8ca856d0c847a45e66ed8a0affb3517b7c6582003147b29f6f6e27b4a9a010bbe36ef449bf24cb55d486f9d0f34e7a3c7c86459c41dd0ba8e2a78fc6bab738fc3e8fc679624d363e2269888cc91320fc936dbd4da4c63214caa99429d7742d6116a94de2bec0916258b89a597c9c97c5effae9fa6285bacc7e76ba8401ccd0e42f306b3c130c483ea6904b1a752df5bb06eae0daefb88f1e94e75ab9b8eba41a204521e5d9ea7a94bbecae4a849dcd0644ae802d146f060127c4315c15057cfd69edf983283b15358de22677256eadca7bff3a1baaf7111c1c823aaadb6a63c44a595cbf3a15a3bd1a0c8f144d8e5934cef5f9768d137652f512a73512afdb93246d64c3fef99dc7ea2a0165e65eaf8d5e8139dba1bcc25c86fa79735d9d66ede4beb67ed1ee2eb382000ae0e6d61164c40340ddeabedfc939358b74f1275cfcc611341c8cb39786def4140ded43865eface611ed8cbd57af9975c409b8094d26093a0bb88e0591636915de6a447bdfbcbaed31a2e57e4d2ccaae7a4ade89ae5f115718eff1ae6e1ca9e944ed7657b20ebf1bab83473d18378d946fa2cd2f1ab3df8cf2aed56065f26bc404dc897fa430f2b3b87e1315c3c3adf184b4a4ee38be94323f75d1ee57030ec47f40568926f5a5a07910d57631dd9a98a6ed378e07d59f5fd50615e1bc9364862a4e1c348422f7ca3ce7357965bc6940a233f6afff15dca05b6ac94a2913b19f5a42f8f7d0bcc551023f18cfea81b0f99e9241c594476aebab3f1b674f2d221f52518dadf7dfafb5f37cfb3c89f6eb97374edba60d97e8229cc2f3421312ac2aaa91c7e9e71db4068ab535a34f3134cb007d4d9331306519e2a667c293c6783a25cf4edfc1037e294d2023a7fc8855e460686b402a169c0f8933ef9acb959c67adaf22824176b36b1b36b0ac3c8895a644e050f61b9afb16a1c066bb1f4ec00650f0e4dcf8519fa4574f0206bd008bbe618c1f5f811ec5d0efa487393b5f5d53895e7e213d385d33d867d18eb63e7ea7049c1d54cc19fc6961a9d559509ad25c4009cc934e6673acfec09f07dafb191011a9085dd698850627db9eeeb514874df8ec10d71439fdef71926b395ca566c760aaaac8de6f8c6d9395e07c28c8b4186be57d2e6d443b0ca65ab03d291750ccbd0907b9e29d757bb994d7371e2acfdcdc00247ee2ece77f9b6e0a5871644d1f8bd59f812c3de400467a5f1221e1d15b2966584679194402c40e728d8b036e1f7fff95adbe0cfee6166c031ee01c98f3e2cdd9718c6a4aa9de3511ec3e6eee43a6c014f25eb28a0523e670391a1bd9d6852928c6d5b8810cf42e8dbe5ab8c49410190a31f3019b9b6cd544936a16265a18a5f7ff1c4c0c0773c512d46605fdc7ae67d81c704e8f7613da163fab6027b3848ae3cf537b25a7fcb8e6fd80ee3f41ff0d28e7571de3764bd430f4fa36bf2dec9b28ac9ec95c4d843ae152b263161bf29dca5985a86c3d555380b24c5b79d607c733d1be8410057e690c2259c3516b05937384f40ca40012bc3c6cc08d9d7b1ac93d9becea67b252ef0e3ce3777b6210d2b01384bf8d32ea64b8336c2303a75274cd603df18ef63f5f4a39a3d2db6fed6b3bec8dd404ff41df65b1babd12c060fd9d9d8d5dc2e26301a88d15cbb3c032ce73e719649cd76cc17734feda8998d57eba0c0002c914ba6989bf6a5ee6da43d2bc5a074ad273b36be12174d2e2ea636ef8cb45713ad8cb908d412bbffa96c273f62205b84b853b636fee69f26dab76c0ea299323b9aabcd47642b831067ca3e5710f6a5e91c7785364063c50f48032e3da2138f6c24ab55ddaedf585e510aa0bfaa9cb549a3be21b742ca20fb6af6a60bf0781e2dc449526d236f0bb027e72252bffebbaed71bf53b26cbd3c1f9164d236c1fb77b992c0a1c40757e9adbf241327042471e08f8df1ddc3517ac5645e21a9d45d82af0ed5459e04d8d2fa74420d3dabdfca5f128c2fdb62f257fb37556a89a930b8e0bb4a021c9ed90b89dfc968a7803af2d97c873a48b6b7d5a89fd0573d56c3f0e438456729f8a94bea056e750fe649f4030f9f097bbba14baa0040ac1925735b5d968225e97c24e2e252da090ca6d834574144cebf6d6db4b3dd54abf5829c405219ba5d4f9e4d4836146b8bb348ec1d28dd812d0d806e92079ba5dcbc56c7fb6b95e60601cebef0f504a94d15dd22c4922f2ff9f144f41beffdc6a20b16e5c76c1e0104efda32afd75507328d3f560168f01ebb568d97287e86f955e48f7b1162da3aa641435aec7e1eae9db99ddfeeee0566f196be4e17078a4a5ccfb5dd70bf74ca7f5480266786c802287b3f8cc9b004626607da6042a8f23b75defc2fefdfcd7b9842252643c2f0dad8ef8db5d4b8f367866edd2c668694a906f4946aa2a53c6b95773c3e2347b972907ac2165133de9cfd9a862bace34c8a3bd54dd7c8fa426ed9331f8e7cbb976b7c88a709884a9f75f7e7a43947a3534077968a049b26ca52ed4bc5391184e6abd8830ee73927ceeb31824e68d6e11b932597c35ba531e3371aec77df456c5b7e5226b3a19a6f1ef1d72786a1a1eb586392085b4e6dad5dcfad3b2d04fea2b271bcd400cf314ca77170e349cca04b4e25f16c10630fbc25c494fe1ebead95227c7a554ede0ce8eb3d9eac8da44f7cb0f278cee2849229a35341ef8c443337a19644f68b1a77bc91803e9c069fdd06e128c12ffd22590e552b449cf89562c12b275775cab70d619f213e050f5145e527c3119aeb056f7789953b9dc6b6ca15aab7c00b19065b22332e4958c8a7039795eb1c64c844c56019143b02735916213549c7d7a51826eb76623a4c257779b410f1f515c95fea3394918286b0afb3277cbbf7f7d18cde17bdf49ba4039ad1b1654dd92f570fdb616d26053a2b8a52ec5f80931bd1c76ea4c0ecb2c68db38955acf79787aa0eff20f134eb434c799404c5517048d09fa5aee21c7f1aa8e1b8dc075e673f6051215af6f4b10f209202b4b6c9e93a483d9bed3d52d2156ca0c6493aff28d11d3a39a2dee14f5d5b8e995415fe0845f1b716c149ad5486e3a82430fe53915bec428685cd966008cea667321e23b5f0860e9b592d0081c2341113f9ca710bd6e0dc19e79c3562815ffbcf5493c58caf6ac9f364ee8b2be9ebedce546ff77785e899c5cffca272c97f302dcba9be665be181f4c9c28f2c1562c602185cbb28c3f794e7f4671eb45f72793a7a9ee9e182cb9e18ddab2b006fb3172657c073a09c6274220a83436bd7e236e29b23f5b8ab45a843ba0e5ac09b55d87d9f768b55d0e39ab1a103aa1fd244fa7f10c129803e8122498e96e91c8f7c941ce7553cf80a4d7bc66ff1df683443ba66af77dfe166269988e0363876ff77f7831e57ec51ac95ed7f7f24483f59f4b21d11b79d25dc72a7a948a4a608c5fefd69f1c7b80663945f546480e6e8718bd25ad6a2ab27a22b2d8f2df73e89b9d56ef1a5580f8fd65385bab11db20ea070e1b6367644d65ab4fdc505152ad1f025af6870470c846f340ce396c8206ab83e1f256ffab4fe02a0504657502b3e79595c471ef46aee638e4a9059e5071c14aad5872d3fb420e37b04f68715a513b3b0b86e624da084dc983b15a262d6b8d7268d3cd10f908ec9a2bda65538cc9c347ee5ce7876405a70e00b085cde396d43f47bf9a2d93e630ae91a8638034de63549cebe8012c63f498e6b65ee20297fdd2f3fbb99935d34c9872b9374549d836bdf257bdbfd510f387601fae6164b629289cae3d2aeeaf82373f482405bd70ebd1d8e07ca094f24cfeb61d89a8d8ff9553f83022f433800d70339fe4680f001815344ae623519ea88034c788612a84daa4bd823b86f4149c813ef62f803ffd76b41372af1359f15e394eea093e654883d7ebef38e7e5f5276264ace2d441ca74e60524013c39c10ea4526d603fdc0340d2fb08e6532aa5b64621993bd5a76d95035bedf51ae4b9b11bf94ec82bc882663af800cf227ca5fff968b9ff42d9ec094c4e4d1acd887166753688d9307ab961b64acb16836ecac4c02e4c4daebfa4ec00a0684565df2025aafd10efd46b79d58be84494d7a04490ae797490109308922f455877c0d4"}) sendmsg$nl_route(r1, &(0x7f0000000540)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f0000000500)={&(0x7f0000000480)=@ipv6_newrule={0x7c, 0x20, 0x100, 0x70bd2b, 0x25dfdbff, {0xa, 0x10, 0x80, 0x0, 0xce, 0x0, 0x0, 0x0, 0xd}, [@FIB_RULE_POLICY=@FRA_FWMASK={0x8, 0x10, 0x80000000}, @FRA_SRC={0x14, 0x2, @private0}, @FRA_SRC={0x14, 0x2, @private1={0xfc, 0x1, '\x00', 0x1}}, @FRA_DST={0x14, 0x1, @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}}, @FIB_RULE_POLICY=@FRA_IP_PROTO={0x5, 0x16, 0xc}, @FRA_DST={0x14, 0x1, @empty}]}, 0x7c}, 0x1, 0x0, 0x0, 0x40048c1}, 0x10) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r4 = socket$kcm(0x10, 0x2, 0x0) sendmsg$kcm(r4, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000080)=[{&(0x7f00000002c0)="2e00000010008108040f80ecdb4cb9100a4803002e000000e8bd741d42c814000e000100240248ff050005001201", 0x2e}], 0x1, 0x0, 0x0, 0xa}, 0x0) 04:26:54 executing program 3: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) 04:26:54 executing program 2: r0 = openat$vcsa(0xffffffffffffff9c, &(0x7f0000000600), 0x0, 0x0) io_uring_enter(r0, 0x2786, 0x0, 0x1, &(0x7f0000000140)={[0xedb5]}, 0x8) connect$rxrpc(r0, &(0x7f0000000000)=@in6={0x21, 0x2, 0x2, 0x1c, {0xa, 0x4e22, 0x0, @remote, 0x3}}, 0x24) r1 = socket$nl_generic(0x10, 0x3, 0x10) mkdir(0x0, 0x0) mount$fuse(0x0, 0x0, 0x0, 0x0, 0x0) mount$bpf(0x20000000, &(0x7f0000000100)='./file0\x00', 0x0, 0x2001001, 0x0) bind(0xffffffffffffffff, &(0x7f0000000200)=@isdn={0x22, 0x0, 0x0, 0x3}, 0x80) perf_event_open(&(0x7f00000003c0)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x800a8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x5}, 0x0, 0xfffffdffffffffff, 0xffffffffffffffff, 0x0) write$FUSE_INIT(0xffffffffffffffff, &(0x7f0000002100)={0x50, 0xffffffffffffffda, 0x0, {0x7, 0x22, 0x0, 0x2200, 0xc5, 0x9, 0xff, 0x1}}, 0x50) syz_emit_ethernet(0x9e, &(0x7f0000000740)={@multicast, @empty, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "001d08", 0x68, 0x3a, 0xff, @dev, @mcast2, {[], @ndisc_ra={0x86, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, [{0x3, 0x9, "a78ce540cd4f791153d5dea6b2590b1c71a8242373244ad2439adc07df0a69748e254c1e4a8a8b3f0ab0c430d3be27df3e34066d42ca0a5c11b37adac15084dbaf736b41e5a80502"}, {0x0, 0x1, "000005000000000000fac600"}]}}}}}}, 0x0) fsetxattr$trusted_overlay_opaque(0xffffffffffffffff, &(0x7f0000000380), 0x0, 0x0, 0x3) pivot_root(&(0x7f0000000080)='./file0\x00', &(0x7f00000000c0)='./file0\x00') r2 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000080), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_80211(r1, 0x8933, &(0x7f00000000c0)={'wlan0\x00', 0x0}) sendmsg$NL80211_CMD_FRAME(0xffffffffffffffff, &(0x7f00000003c0)={0x0, 0x0, &(0x7f0000000380)={&(0x7f0000000700)=ANY=[@ANYBLOB="90000000", @ANYRES16=r2, @ANYBLOB="010000000000000000003b00000008000300", @ANYRES32=r3, @ANYBLOB="7100330080800000ffffffffffff0802110000005050505050500000000000000000000000000000640000000006010101010101010005030000002a01003c04000000002d1a00000000000000000000fffffff0000000000000000000000000720603030303031371070000"], 0x90}}, 0x0) [ 1183.336516][T10427] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. 04:26:54 executing program 5: perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xdf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = syz_open_dev$vim2m(&(0x7f0000000240), 0x6, 0x2) write$binfmt_elf64(r0, &(0x7f0000000500)={{0x7f, 0x45, 0x4c, 0x46, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9c, 0x0, 0x40, 0x0, 0x9, 0x0, 0x38, 0x2, 0x0, 0x3}, [{}], "", ['\x00']}, 0x178) 04:26:54 executing program 0: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) 04:26:54 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r2, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r2, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="48000000100005e7ffffff00e0ffffff00000000", @ANYRES32=r3, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=ANY=[@ANYBLOB="38000000240007050000004007a2a30005000000", @ANYRES32=r3, @ANYBLOB="00000000ffffffff00000000090001006866736300000000080002"], 0x38}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000200)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000700)=ANY=[@ANYBLOB='<\x00\x00\x00,\x00\'\r\x00'/20, @ANYRES32=r3, @ANYBLOB="0000000045fab1c73470000000000c00420008000200ac14140029145b7cabaa98ffd5ce6385db4bbb4ab6bd46dc3df12e3c34e5aa3989b86cbfc3857b87641368721e8700000100227edc0e3e574680dcf75573281e831ff41f323bbfa4b9bee087fc7eff393e03abef9150e3a3cda3d2aa0d9169ca00ba05d3d50d8c542259283012049f7abb13dadbe789d9028969fb4faba986a785839d603e31cf943fa76952c488f6d06e94c8ed8e553d3c356fc0f913b3d08db40000008000000000000000000000066506a11e8bf08e0b38cb37e27741e359b9f85f8c5ccdd41fc457b120d517e171d9c1cf8a026150efd13ceb5c1b62c9ff8bc9fd5a867c237c95be954f898668e3828ec9898d2432a6438b5751d6dfc7b28921730be1571502ef816d5e3174d6cd08f14ee787ef928445fae0b53d1325cafef2e59d1753350b30ecf5bd1e0a2a71a4552ea5dce8abc7422efc9ec0728f1be987dbc253fd72fc67e8cf892fd1911d760e5944afa0feaa498398d37de43b39d2316c345521631b282dc532d7a85b982f6b7fd1ae6aea5512c7be86a1f2d040842df5c33a58"], 0x3c}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000380)=ANY=[@ANYBLOB='$\x00\x00\x00.\x00)\a\x00'/20, @ANYRES32=r3], 0x24}}, 0x0) ioctl$BTRFS_IOC_ADD_DEV(0xffffffffffffffff, 0x5000940a, &(0x7f0000001480)={{}, "83e8f98d9cfc2531e2568d8a1a52b1eb15489789c292760bb122a5e45cfd0df09a23fcf3856b36d353ef4955cf9c7b77da940d37aa4b42effcc54b580767b66e1e0fd08df189be44735793a48eb56f1dcb31f79c9d8864d466aa6dfc708fcba63a54685de0ce27cb732fc54bda462a234693878857b9f44cd07797244c52a686c98e7822d5535b90b269a40e4f359f5ec28fcf394504c108337a9816122787f2be0cea2c9569c4a09d069b7a9e031d62ddddf83a63fdca24111d87f757f6bde8d6190161cebb5f2d27e2098977079b6950295be4ba061c5b2d63bf81e59fde09370e2b91fe8a7332b5e319bd90b759a4469cddd0be9d8a7eb312b2443722bdbb85325ff069627d28b0c0eca26fca5bb91675bd7aa880754590ecec81ecac4066ff9399a7918705dd18c56ab6a41ca1c4317bc1df7d15c6744adac57af0c8afe8911f7474d0c9ac5f6a37151e1cffb5317c3c9c09ca509d3b18110893e6a529761f4d3eab67517c2bb42e081291df1c195ecaf8b376a9869db729b181068e30c3c990af49c8f8fb2ee9f7f730443b1cf82b5f1e0004c398342cd97a71218571dd545cd635aaaa20fc91d0740a9cece0fcf893c27a42a5bc11c78da627071f1f222b07220c83ed642d3861bd4e434c4cc9b7e2dc7d9e07f6df9223b74ce03cfb31834b38e3e680a459ba9f73c70b8eac45e044e89143c3b5bd73661fbb29a56471ae5e3055111c89b854e2cd54a25b56c6b606b968a9649863a313192c6b43075ceec2c860dd0ea11138a98648c366bd82583ff6ef45f5dea8cf950cfb42c3fbb41e00fe497663dd8906edf54e954c9aa089b1955880bcb0448e7ec44326d07d391975c93905f0827f91a59c23e597903fbeb7d7003edd5c2e4d5913640f9fcfb73c5bbe7d1ead7cd98c007e811e81060b57d7c85a950ae7f7f4354fff97faa93b07fbed0f8ac3080c8bbf7e092690a23c0e4cf874be0e7e87a7ffcce59968931a5160f0a3496a702f418dd8806d324266b6b28f79c6773a35a5d0860aa1e9d316573005b2d1fa98a948373107827f9bbec153847de7a789d7d352b685ef93816a52cb717dfb076452c40fe0bebf4707424fa7999352db419bd5dcda244b60442ddfb86787240891bf45ad9d903306ad57864aa78366f969cf74f72a6be8a26ff49184d1f47ab827948ce9529db29b684250fbd1bde701e2909cb8312d7153081fd2e9a1febafde461047b21340e818a94aed6f072ba7b35126c7e2789cf25fe90d2575f698744bb74f3b80fb780b1630033fd3b3b92e421c7b3517a6f49cd6a982acc4b9823416a512e0a546cfe4d2b2677a405b76027fe201d945264ae5007c18a4cf760c53b3a33b6af115dc4b581f1e54913674dcf082859f20edf0f9ef50bf666fc5771c1a6232c9c00ca45bee2fe75763009766a2ec483c3a9538cf35df01a97892f2708a41ba8485c5372cf8f79fe1545b423b7192cdf6a36e8dedf6a324971b41c81b7087afd932b1d719829fc0fbc35068f1be824e3fdfa7dcd2f3830a3be2d8d040a53246ee8be36fa94e850397a1614b82f759bfaaca47c42170d17a08151e2d971ba3773690dd489c819be258b514a63526188751ea78d7715de79577637cd805b8c6ebbf3c7ebef8ca856d0c847a45e66ed8a0affb3517b7c6582003147b29f6f6e27b4a9a010bbe36ef449bf24cb55d486f9d0f34e7a3c7c86459c41dd0ba8e2a78fc6bab738fc3e8fc679624d363e2269888cc91320fc936dbd4da4c63214caa99429d7742d6116a94de2bec0916258b89a597c9c97c5effae9fa6285bacc7e76ba8401ccd0e42f306b3c130c483ea6904b1a752df5bb06eae0daefb88f1e94e75ab9b8eba41a204521e5d9ea7a94bbecae4a849dcd0644ae802d146f060127c4315c15057cfd69edf983283b15358de22677256eadca7bff3a1baaf7111c1c823aaadb6a63c44a595cbf3a15a3bd1a0c8f144d8e5934cef5f9768d137652f512a73512afdb93246d64c3fef99dc7ea2a0165e65eaf8d5e8139dba1bcc25c86fa79735d9d66ede4beb67ed1ee2eb382000ae0e6d61164c40340ddeabedfc939358b74f1275cfcc611341c8cb39786def4140ded43865eface611ed8cbd57af9975c409b8094d26093a0bb88e0591636915de6a447bdfbcbaed31a2e57e4d2ccaae7a4ade89ae5f115718eff1ae6e1ca9e944ed7657b20ebf1bab83473d18378d946fa2cd2f1ab3df8cf2aed56065f26bc404dc897fa430f2b3b87e1315c3c3adf184b4a4ee38be94323f75d1ee57030ec47f40568926f5a5a07910d57631dd9a98a6ed378e07d59f5fd50615e1bc9364862a4e1c348422f7ca3ce7357965bc6940a233f6afff15dca05b6ac94a2913b19f5a42f8f7d0bcc551023f18cfea81b0f99e9241c594476aebab3f1b674f2d221f52518dadf7dfafb5f37cfb3c89f6eb97374edba60d97e8229cc2f3421312ac2aaa91c7e9e71db4068ab535a34f3134cb007d4d9331306519e2a667c293c6783a25cf4edfc1037e294d2023a7fc8855e460686b402a169c0f8933ef9acb959c67adaf22824176b36b1b36b0ac3c8895a644e050f61b9afb16a1c066bb1f4ec00650f0e4dcf8519fa4574f0206bd008bbe618c1f5f811ec5d0efa487393b5f5d53895e7e213d385d33d867d18eb63e7ea7049c1d54cc19fc6961a9d559509ad25c4009cc934e6673acfec09f07dafb191011a9085dd698850627db9eeeb514874df8ec10d71439fdef71926b395ca566c760aaaac8de6f8c6d9395e07c28c8b4186be57d2e6d443b0ca65ab03d291750ccbd0907b9e29d757bb994d7371e2acfdcdc00247ee2ece77f9b6e0a5871644d1f8bd59f812c3de400467a5f1221e1d15b2966584679194402c40e728d8b036e1f7fff95adbe0cfee6166c031ee01c98f3e2cdd9718c6a4aa9de3511ec3e6eee43a6c014f25eb28a0523e670391a1bd9d6852928c6d5b8810cf42e8dbe5ab8c49410190a31f3019b9b6cd544936a16265a18a5f7ff1c4c0c0773c512d46605fdc7ae67d81c704e8f7613da163fab6027b3848ae3cf537b25a7fcb8e6fd80ee3f41ff0d28e7571de3764bd430f4fa36bf2dec9b28ac9ec95c4d843ae152b263161bf29dca5985a86c3d555380b24c5b79d607c733d1be8410057e690c2259c3516b05937384f40ca40012bc3c6cc08d9d7b1ac93d9becea67b252ef0e3ce3777b6210d2b01384bf8d32ea64b8336c2303a75274cd603df18ef63f5f4a39a3d2db6fed6b3bec8dd404ff41df65b1babd12c060fd9d9d8d5dc2e26301a88d15cbb3c032ce73e719649cd76cc17734feda8998d57eba0c0002c914ba6989bf6a5ee6da43d2bc5a074ad273b36be12174d2e2ea636ef8cb45713ad8cb908d412bbffa96c273f62205b84b853b636fee69f26dab76c0ea299323b9aabcd47642b831067ca3e5710f6a5e91c7785364063c50f48032e3da2138f6c24ab55ddaedf585e510aa0bfaa9cb549a3be21b742ca20fb6af6a60bf0781e2dc449526d236f0bb027e72252bffebbaed71bf53b26cbd3c1f9164d236c1fb77b992c0a1c40757e9adbf241327042471e08f8df1ddc3517ac5645e21a9d45d82af0ed5459e04d8d2fa74420d3dabdfca5f128c2fdb62f257fb37556a89a930b8e0bb4a021c9ed90b89dfc968a7803af2d97c873a48b6b7d5a89fd0573d56c3f0e438456729f8a94bea056e750fe649f4030f9f097bbba14baa0040ac1925735b5d968225e97c24e2e252da090ca6d834574144cebf6d6db4b3dd54abf5829c405219ba5d4f9e4d4836146b8bb348ec1d28dd812d0d806e92079ba5dcbc56c7fb6b95e60601cebef0f504a94d15dd22c4922f2ff9f144f41beffdc6a20b16e5c76c1e0104efda32afd75507328d3f560168f01ebb568d97287e86f955e48f7b1162da3aa641435aec7e1eae9db99ddfeeee0566f196be4e17078a4a5ccfb5dd70bf74ca7f5480266786c802287b3f8cc9b004626607da6042a8f23b75defc2fefdfcd7b9842252643c2f0dad8ef8db5d4b8f367866edd2c668694a906f4946aa2a53c6b95773c3e2347b972907ac2165133de9cfd9a862bace34c8a3bd54dd7c8fa426ed9331f8e7cbb976b7c88a709884a9f75f7e7a43947a3534077968a049b26ca52ed4bc5391184e6abd8830ee73927ceeb31824e68d6e11b932597c35ba531e3371aec77df456c5b7e5226b3a19a6f1ef1d72786a1a1eb586392085b4e6dad5dcfad3b2d04fea2b271bcd400cf314ca77170e349cca04b4e25f16c10630fbc25c494fe1ebead95227c7a554ede0ce8eb3d9eac8da44f7cb0f278cee2849229a35341ef8c443337a19644f68b1a77bc91803e9c069fdd06e128c12ffd22590e552b449cf89562c12b275775cab70d619f213e050f5145e527c3119aeb056f7789953b9dc6b6ca15aab7c00b19065b22332e4958c8a7039795eb1c64c844c56019143b02735916213549c7d7a51826eb76623a4c257779b410f1f515c95fea3394918286b0afb3277cbbf7f7d18cde17bdf49ba4039ad1b1654dd92f570fdb616d26053a2b8a52ec5f80931bd1c76ea4c0ecb2c68db38955acf79787aa0eff20f134eb434c799404c5517048d09fa5aee21c7f1aa8e1b8dc075e673f6051215af6f4b10f209202b4b6c9e93a483d9bed3d52d2156ca0c6493aff28d11d3a39a2dee14f5d5b8e995415fe0845f1b716c149ad5486e3a82430fe53915bec428685cd966008cea667321e23b5f0860e9b592d0081c2341113f9ca710bd6e0dc19e79c3562815ffbcf5493c58caf6ac9f364ee8b2be9ebedce546ff77785e899c5cffca272c97f302dcba9be665be181f4c9c28f2c1562c602185cbb28c3f794e7f4671eb45f72793a7a9ee9e182cb9e18ddab2b006fb3172657c073a09c6274220a83436bd7e236e29b23f5b8ab45a843ba0e5ac09b55d87d9f768b55d0e39ab1a103aa1fd244fa7f10c129803e8122498e96e91c8f7c941ce7553cf80a4d7bc66ff1df683443ba66af77dfe166269988e0363876ff77f7831e57ec51ac95ed7f7f24483f59f4b21d11b79d25dc72a7a948a4a608c5fefd69f1c7b80663945f546480e6e8718bd25ad6a2ab27a22b2d8f2df73e89b9d56ef1a5580f8fd65385bab11db20ea070e1b6367644d65ab4fdc505152ad1f025af6870470c846f340ce396c8206ab83e1f256ffab4fe02a0504657502b3e79595c471ef46aee638e4a9059e5071c14aad5872d3fb420e37b04f68715a513b3b0b86e624da084dc983b15a262d6b8d7268d3cd10f908ec9a2bda65538cc9c347ee5ce7876405a70e00b085cde396d43f47bf9a2d93e630ae91a8638034de63549cebe8012c63f498e6b65ee20297fdd2f3fbb99935d34c9872b9374549d836bdf257bdbfd510f387601fae6164b629289cae3d2aeeaf82373f482405bd70ebd1d8e07ca094f24cfeb61d89a8d8ff9553f83022f433800d70339fe4680f001815344ae623519ea88034c788612a84daa4bd823b86f4149c813ef62f803ffd76b41372af1359f15e394eea093e654883d7ebef38e7e5f5276264ace2d441ca74e60524013c39c10ea4526d603fdc0340d2fb08e6532aa5b64621993bd5a76d95035bedf51ae4b9b11bf94ec82bc882663af800cf227ca5fff968b9ff42d9ec094c4e4d1acd887166753688d9307ab961b64acb16836ecac4c02e4c4daebfa4ec00a0684565df2025aafd10efd46b79d58be84494d7a04490ae797490109308922f455877c0d4"}) sendmsg$nl_route(r1, &(0x7f0000000540)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f0000000500)={&(0x7f0000000480)=@ipv6_newrule={0x7c, 0x20, 0x100, 0x70bd2b, 0x25dfdbff, {0xa, 0x10, 0x80, 0x0, 0xce, 0x0, 0x0, 0x0, 0xd}, [@FIB_RULE_POLICY=@FRA_FWMASK={0x8, 0x10, 0x80000000}, @FRA_SRC={0x14, 0x2, @private0}, @FRA_SRC={0x14, 0x2, @private1={0xfc, 0x1, '\x00', 0x1}}, @FRA_DST={0x14, 0x1, @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}}, @FIB_RULE_POLICY=@FRA_IP_PROTO={0x5, 0x16, 0xc}, @FRA_DST={0x14, 0x1, @empty}]}, 0x7c}, 0x1, 0x0, 0x0, 0x40048c1}, 0x10) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r4 = socket$kcm(0x10, 0x2, 0x0) sendmsg$kcm(r4, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000080)=[{&(0x7f00000002c0)="2e00000010008108040f80ecdb4cb9100a4803002e000000e8bd741d42c814000e000100240248ff050005001201", 0x2e}], 0x1, 0x0, 0x0, 0xa}, 0x0) 04:26:54 executing program 4: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) [ 1183.628128][T10443] input: syz0 as /devices/virtual/input/input36 04:26:54 executing program 2: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) 04:26:54 executing program 5: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) [ 1183.799316][T10461] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. 04:26:54 executing program 3: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) [ 1183.895243][T10460] input: syz0 as /devices/virtual/input/input37 04:26:55 executing program 4: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) [ 1184.072643][T10483] input: syz0 as /devices/virtual/input/input38 04:26:55 executing program 2: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) 04:26:55 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$netlink(0x10, 0x3, 0x0) r2 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r2, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r2, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f00000002c0)=0x14) sendmsg$nl_route(r1, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="48000000100005e7ffffff00e0ffffff00000000", @ANYRES32=r3, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000003c0)=ANY=[@ANYBLOB="38000000240007050000004007a2a30005000000", @ANYRES32=r3, @ANYBLOB="00000000ffffffff00000000090001006866736300000000080002"], 0x38}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000200)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000700)=ANY=[@ANYBLOB='<\x00\x00\x00,\x00\'\r\x00'/20, @ANYRES32=r3, @ANYBLOB="0000000045fab1c73470000000000c00420008000200ac14140029145b7cabaa98ffd5ce6385db4bbb4ab6bd46dc3df12e3c34e5aa3989b86cbfc3857b87641368721e8700000100227edc0e3e574680dcf75573281e831ff41f323bbfa4b9bee087fc7eff393e03abef9150e3a3cda3d2aa0d9169ca00ba05d3d50d8c542259283012049f7abb13dadbe789d9028969fb4faba986a785839d603e31cf943fa76952c488f6d06e94c8ed8e553d3c356fc0f913b3d08db40000008000000000000000000000066506a11e8bf08e0b38cb37e27741e359b9f85f8c5ccdd41fc457b120d517e171d9c1cf8a026150efd13ceb5c1b62c9ff8bc9fd5a867c237c95be954f898668e3828ec9898d2432a6438b5751d6dfc7b28921730be1571502ef816d5e3174d6cd08f14ee787ef928445fae0b53d1325cafef2e59d1753350b30ecf5bd1e0a2a71a4552ea5dce8abc7422efc9ec0728f1be987dbc253fd72fc67e8cf892fd1911d760e5944afa0feaa498398d37de43b39d2316c345521631b282dc532d7a85b982f6b7fd1ae6aea5512c7be86a1f2d040842df5c33a58"], 0x3c}}, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000380)=ANY=[@ANYBLOB='$\x00\x00\x00.\x00)\a\x00'/20, @ANYRES32=r3], 0x24}}, 0x0) ioctl$BTRFS_IOC_ADD_DEV(0xffffffffffffffff, 0x5000940a, &(0x7f0000001480)={{}, "83e8f98d9cfc2531e2568d8a1a52b1eb15489789c292760bb122a5e45cfd0df09a23fcf3856b36d353ef4955cf9c7b77da940d37aa4b42effcc54b580767b66e1e0fd08df189be44735793a48eb56f1dcb31f79c9d8864d466aa6dfc708fcba63a54685de0ce27cb732fc54bda462a234693878857b9f44cd07797244c52a686c98e7822d5535b90b269a40e4f359f5ec28fcf394504c108337a9816122787f2be0cea2c9569c4a09d069b7a9e031d62ddddf83a63fdca24111d87f757f6bde8d6190161cebb5f2d27e2098977079b6950295be4ba061c5b2d63bf81e59fde09370e2b91fe8a7332b5e319bd90b759a4469cddd0be9d8a7eb312b2443722bdbb85325ff069627d28b0c0eca26fca5bb91675bd7aa880754590ecec81ecac4066ff9399a7918705dd18c56ab6a41ca1c4317bc1df7d15c6744adac57af0c8afe8911f7474d0c9ac5f6a37151e1cffb5317c3c9c09ca509d3b18110893e6a529761f4d3eab67517c2bb42e081291df1c195ecaf8b376a9869db729b181068e30c3c990af49c8f8fb2ee9f7f730443b1cf82b5f1e0004c398342cd97a71218571dd545cd635aaaa20fc91d0740a9cece0fcf893c27a42a5bc11c78da627071f1f222b07220c83ed642d3861bd4e434c4cc9b7e2dc7d9e07f6df9223b74ce03cfb31834b38e3e680a459ba9f73c70b8eac45e044e89143c3b5bd73661fbb29a56471ae5e3055111c89b854e2cd54a25b56c6b606b968a9649863a313192c6b43075ceec2c860dd0ea11138a98648c366bd82583ff6ef45f5dea8cf950cfb42c3fbb41e00fe497663dd8906edf54e954c9aa089b1955880bcb0448e7ec44326d07d391975c93905f0827f91a59c23e597903fbeb7d7003edd5c2e4d5913640f9fcfb73c5bbe7d1ead7cd98c007e811e81060b57d7c85a950ae7f7f4354fff97faa93b07fbed0f8ac3080c8bbf7e092690a23c0e4cf874be0e7e87a7ffcce59968931a5160f0a3496a702f418dd8806d324266b6b28f79c6773a35a5d0860aa1e9d316573005b2d1fa98a948373107827f9bbec153847de7a789d7d352b685ef93816a52cb717dfb076452c40fe0bebf4707424fa7999352db419bd5dcda244b60442ddfb86787240891bf45ad9d903306ad57864aa78366f969cf74f72a6be8a26ff49184d1f47ab827948ce9529db29b684250fbd1bde701e2909cb8312d7153081fd2e9a1febafde461047b21340e818a94aed6f072ba7b35126c7e2789cf25fe90d2575f698744bb74f3b80fb780b1630033fd3b3b92e421c7b3517a6f49cd6a982acc4b9823416a512e0a546cfe4d2b2677a405b76027fe201d945264ae5007c18a4cf760c53b3a33b6af115dc4b581f1e54913674dcf082859f20edf0f9ef50bf666fc5771c1a6232c9c00ca45bee2fe75763009766a2ec483c3a9538cf35df01a97892f2708a41ba8485c5372cf8f79fe1545b423b7192cdf6a36e8dedf6a324971b41c81b7087afd932b1d719829fc0fbc35068f1be824e3fdfa7dcd2f3830a3be2d8d040a53246ee8be36fa94e850397a1614b82f759bfaaca47c42170d17a08151e2d971ba3773690dd489c819be258b514a63526188751ea78d7715de79577637cd805b8c6ebbf3c7ebef8ca856d0c847a45e66ed8a0affb3517b7c6582003147b29f6f6e27b4a9a010bbe36ef449bf24cb55d486f9d0f34e7a3c7c86459c41dd0ba8e2a78fc6bab738fc3e8fc679624d363e2269888cc91320fc936dbd4da4c63214caa99429d7742d6116a94de2bec0916258b89a597c9c97c5effae9fa6285bacc7e76ba8401ccd0e42f306b3c130c483ea6904b1a752df5bb06eae0daefb88f1e94e75ab9b8eba41a204521e5d9ea7a94bbecae4a849dcd0644ae802d146f060127c4315c15057cfd69edf983283b15358de22677256eadca7bff3a1baaf7111c1c823aaadb6a63c44a595cbf3a15a3bd1a0c8f144d8e5934cef5f9768d137652f512a73512afdb93246d64c3fef99dc7ea2a0165e65eaf8d5e8139dba1bcc25c86fa79735d9d66ede4beb67ed1ee2eb382000ae0e6d61164c40340ddeabedfc939358b74f1275cfcc611341c8cb39786def4140ded43865eface611ed8cbd57af9975c409b8094d26093a0bb88e0591636915de6a447bdfbcbaed31a2e57e4d2ccaae7a4ade89ae5f115718eff1ae6e1ca9e944ed7657b20ebf1bab83473d18378d946fa2cd2f1ab3df8cf2aed56065f26bc404dc897fa430f2b3b87e1315c3c3adf184b4a4ee38be94323f75d1ee57030ec47f40568926f5a5a07910d57631dd9a98a6ed378e07d59f5fd50615e1bc9364862a4e1c348422f7ca3ce7357965bc6940a233f6afff15dca05b6ac94a2913b19f5a42f8f7d0bcc551023f18cfea81b0f99e9241c594476aebab3f1b674f2d221f52518dadf7dfafb5f37cfb3c89f6eb97374edba60d97e8229cc2f3421312ac2aaa91c7e9e71db4068ab535a34f3134cb007d4d9331306519e2a667c293c6783a25cf4edfc1037e294d2023a7fc8855e460686b402a169c0f8933ef9acb959c67adaf22824176b36b1b36b0ac3c8895a644e050f61b9afb16a1c066bb1f4ec00650f0e4dcf8519fa4574f0206bd008bbe618c1f5f811ec5d0efa487393b5f5d53895e7e213d385d33d867d18eb63e7ea7049c1d54cc19fc6961a9d559509ad25c4009cc934e6673acfec09f07dafb191011a9085dd698850627db9eeeb514874df8ec10d71439fdef71926b395ca566c760aaaac8de6f8c6d9395e07c28c8b4186be57d2e6d443b0ca65ab03d291750ccbd0907b9e29d757bb994d7371e2acfdcdc00247ee2ece77f9b6e0a5871644d1f8bd59f812c3de400467a5f1221e1d15b2966584679194402c40e728d8b036e1f7fff95adbe0cfee6166c031ee01c98f3e2cdd9718c6a4aa9de3511ec3e6eee43a6c014f25eb28a0523e670391a1bd9d6852928c6d5b8810cf42e8dbe5ab8c49410190a31f3019b9b6cd544936a16265a18a5f7ff1c4c0c0773c512d46605fdc7ae67d81c704e8f7613da163fab6027b3848ae3cf537b25a7fcb8e6fd80ee3f41ff0d28e7571de3764bd430f4fa36bf2dec9b28ac9ec95c4d843ae152b263161bf29dca5985a86c3d555380b24c5b79d607c733d1be8410057e690c2259c3516b05937384f40ca40012bc3c6cc08d9d7b1ac93d9becea67b252ef0e3ce3777b6210d2b01384bf8d32ea64b8336c2303a75274cd603df18ef63f5f4a39a3d2db6fed6b3bec8dd404ff41df65b1babd12c060fd9d9d8d5dc2e26301a88d15cbb3c032ce73e719649cd76cc17734feda8998d57eba0c0002c914ba6989bf6a5ee6da43d2bc5a074ad273b36be12174d2e2ea636ef8cb45713ad8cb908d412bbffa96c273f62205b84b853b636fee69f26dab76c0ea299323b9aabcd47642b831067ca3e5710f6a5e91c7785364063c50f48032e3da2138f6c24ab55ddaedf585e510aa0bfaa9cb549a3be21b742ca20fb6af6a60bf0781e2dc449526d236f0bb027e72252bffebbaed71bf53b26cbd3c1f9164d236c1fb77b992c0a1c40757e9adbf241327042471e08f8df1ddc3517ac5645e21a9d45d82af0ed5459e04d8d2fa74420d3dabdfca5f128c2fdb62f257fb37556a89a930b8e0bb4a021c9ed90b89dfc968a7803af2d97c873a48b6b7d5a89fd0573d56c3f0e438456729f8a94bea056e750fe649f4030f9f097bbba14baa0040ac1925735b5d968225e97c24e2e252da090ca6d834574144cebf6d6db4b3dd54abf5829c405219ba5d4f9e4d4836146b8bb348ec1d28dd812d0d806e92079ba5dcbc56c7fb6b95e60601cebef0f504a94d15dd22c4922f2ff9f144f41beffdc6a20b16e5c76c1e0104efda32afd75507328d3f560168f01ebb568d97287e86f955e48f7b1162da3aa641435aec7e1eae9db99ddfeeee0566f196be4e17078a4a5ccfb5dd70bf74ca7f5480266786c802287b3f8cc9b004626607da6042a8f23b75defc2fefdfcd7b9842252643c2f0dad8ef8db5d4b8f367866edd2c668694a906f4946aa2a53c6b95773c3e2347b972907ac2165133de9cfd9a862bace34c8a3bd54dd7c8fa426ed9331f8e7cbb976b7c88a709884a9f75f7e7a43947a3534077968a049b26ca52ed4bc5391184e6abd8830ee73927ceeb31824e68d6e11b932597c35ba531e3371aec77df456c5b7e5226b3a19a6f1ef1d72786a1a1eb586392085b4e6dad5dcfad3b2d04fea2b271bcd400cf314ca77170e349cca04b4e25f16c10630fbc25c494fe1ebead95227c7a554ede0ce8eb3d9eac8da44f7cb0f278cee2849229a35341ef8c443337a19644f68b1a77bc91803e9c069fdd06e128c12ffd22590e552b449cf89562c12b275775cab70d619f213e050f5145e527c3119aeb056f7789953b9dc6b6ca15aab7c00b19065b22332e4958c8a7039795eb1c64c844c56019143b02735916213549c7d7a51826eb76623a4c257779b410f1f515c95fea3394918286b0afb3277cbbf7f7d18cde17bdf49ba4039ad1b1654dd92f570fdb616d26053a2b8a52ec5f80931bd1c76ea4c0ecb2c68db38955acf79787aa0eff20f134eb434c799404c5517048d09fa5aee21c7f1aa8e1b8dc075e673f6051215af6f4b10f209202b4b6c9e93a483d9bed3d52d2156ca0c6493aff28d11d3a39a2dee14f5d5b8e995415fe0845f1b716c149ad5486e3a82430fe53915bec428685cd966008cea667321e23b5f0860e9b592d0081c2341113f9ca710bd6e0dc19e79c3562815ffbcf5493c58caf6ac9f364ee8b2be9ebedce546ff77785e899c5cffca272c97f302dcba9be665be181f4c9c28f2c1562c602185cbb28c3f794e7f4671eb45f72793a7a9ee9e182cb9e18ddab2b006fb3172657c073a09c6274220a83436bd7e236e29b23f5b8ab45a843ba0e5ac09b55d87d9f768b55d0e39ab1a103aa1fd244fa7f10c129803e8122498e96e91c8f7c941ce7553cf80a4d7bc66ff1df683443ba66af77dfe166269988e0363876ff77f7831e57ec51ac95ed7f7f24483f59f4b21d11b79d25dc72a7a948a4a608c5fefd69f1c7b80663945f546480e6e8718bd25ad6a2ab27a22b2d8f2df73e89b9d56ef1a5580f8fd65385bab11db20ea070e1b6367644d65ab4fdc505152ad1f025af6870470c846f340ce396c8206ab83e1f256ffab4fe02a0504657502b3e79595c471ef46aee638e4a9059e5071c14aad5872d3fb420e37b04f68715a513b3b0b86e624da084dc983b15a262d6b8d7268d3cd10f908ec9a2bda65538cc9c347ee5ce7876405a70e00b085cde396d43f47bf9a2d93e630ae91a8638034de63549cebe8012c63f498e6b65ee20297fdd2f3fbb99935d34c9872b9374549d836bdf257bdbfd510f387601fae6164b629289cae3d2aeeaf82373f482405bd70ebd1d8e07ca094f24cfeb61d89a8d8ff9553f83022f433800d70339fe4680f001815344ae623519ea88034c788612a84daa4bd823b86f4149c813ef62f803ffd76b41372af1359f15e394eea093e654883d7ebef38e7e5f5276264ace2d441ca74e60524013c39c10ea4526d603fdc0340d2fb08e6532aa5b64621993bd5a76d95035bedf51ae4b9b11bf94ec82bc882663af800cf227ca5fff968b9ff42d9ec094c4e4d1acd887166753688d9307ab961b64acb16836ecac4c02e4c4daebfa4ec00a0684565df2025aafd10efd46b79d58be84494d7a04490ae797490109308922f455877c0d4"}) sendmsg$nl_route(r1, &(0x7f0000000540)={&(0x7f0000000440)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f0000000500)={&(0x7f0000000480)=@ipv6_newrule={0x7c, 0x20, 0x100, 0x70bd2b, 0x25dfdbff, {0xa, 0x10, 0x80, 0x0, 0xce, 0x0, 0x0, 0x0, 0xd}, [@FIB_RULE_POLICY=@FRA_FWMASK={0x8, 0x10, 0x80000000}, @FRA_SRC={0x14, 0x2, @private0}, @FRA_SRC={0x14, 0x2, @private1={0xfc, 0x1, '\x00', 0x1}}, @FRA_DST={0x14, 0x1, @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}}, @FIB_RULE_POLICY=@FRA_IP_PROTO={0x5, 0x16, 0xc}, @FRA_DST={0x14, 0x1, @empty}]}, 0x7c}, 0x1, 0x0, 0x0, 0x40048c1}, 0x10) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r4 = socket$kcm(0x10, 0x2, 0x0) sendmsg$kcm(r4, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000080)=[{&(0x7f00000002c0)="2e00000010008108040f80ecdb4cb9100a4803002e000000e8bd741d42c814000e000100240248ff050005001201", 0x2e}], 0x1, 0x0, 0x0, 0xa}, 0x0) 04:26:55 executing program 0: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) [ 1184.130797][ T2990] Bluetooth: hci3: command 0x040f tx timeout 04:26:55 executing program 5: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) [ 1184.194788][T10485] input: syz0 as /devices/virtual/input/input39 04:26:55 executing program 4: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) [ 1184.269729][T10502] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'. 04:26:55 executing program 2: bpf$BPF_BTF_GET_NEXT_ID(0x17, &(0x7f0000000100)={0x8, 0x0}, 0x8) r1 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000b80)=ANY=[@ANYBLOB="b702000003000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000008009500f10100000000487591731cba12c07d57d995b61e89a4530f92304f242b416ae9eeefc0e9c60ebab1c176bfdbb4dde984510c82dc2b938189a7ca02f732e4c2eab72bf40c0682fd0a0c4ac106b29e220dc28dac72599456d4c4e6f3fe2d1dee18f638ac947b5e026a3287684ab8373bb4df9d72876ef3834293812e927c01c7da1322da44c7f2ed1084a12f56d1cb39df9858037458a4ca037604007600b6be484e4c9517af216bd8ed42f7dd5adb8e49f4a94608c9a20819e02cc22e6be45574d4ed88b37ab8d7674c644dca2f1b4d745fd95c41f9dfc1adafd1e5a3e7f2e898961cb43e438c4e41ae43ea118e14ffffffffe4b8a80366ce5401ec61921a1b529cc8b99bffffb1ac006c67767b03b95151aeb89e6d4a43c625aa228504e4afd8c1cc3eb215ba22f43115f4d39dc7beedb130d9f2be90133a4500000058b8c9370634060105baa664953514605fba3973aa021945b985a8a66e0200000057033815717b4fdbe55b37cb8d7f41aacfbd4089ea1bd22440f64909a09b5a759a703e71f358e11ac8e13db15d792e604a4f279b3bd6621bdf2c17bc0400000000000000ff8d01006200607a9a76e5d9656a7154c75773902a1bdf399df3925130312d095e9c1f973d091c198c1a11edb6b3cc425fe203d2f2655a76865c2c34e2470fcfb1248c0add5431a7fbcb0ef4f66a09af93a09fab1daae4b518d7a5d95a017864487367d6d7ee7bb0749cacf56cf27409c60fca2e0004000000000000a9cb6f4a78444986f9b1ab61f9dab530388eb1f43d4abbfc59d6d1b18fe380df4bf024f120bd715d82033f2fb7d8fc9e0d77b294e097e293db7f002c0024ab2fd8e5e7fb178f047ba32548b4d32972cba6f49051cec1bf6f16231bbb90a2d201a5a47811a2278a03bf7700b06fa191ebd3a0c2ef0058ffebd7cc4cf81f74a7cdac01d998c24f34a5ba9a4a2039d0416e3f81074192c48c63c7d8e94a27a06a4e3d9acee835fd63384f52b8eeb70571e5bbb3e6d2b5eba505000000968981811f832d064048c0e0bbe46984f1f0d0504255c22ee8674053d0e160e525536edf56a93d0a7e6f0889f4ee8964875fea6ff57ba6ae25c5e8ca4f78d5a01308243b08f1caa46be5244d64f8e875857f083144c642f71cdc8e5634c1360c056430f677ee7ed7ac1f9743786b2fb8e0fcfcc3d36c93230b7b059bc295aa0e38b1c3edc3492b96e73d2060acfd8145e4a5851bc4d6fdc5ad939d7795f3879baa88bd194d48e50c84892c97c800d116b059a718351620b846e31ce0b8ef953de70ea860b74a0f3c3dc11177b11cc2e62a95f1ecf607a8dc38e5261315a1bd46b38845ebca04061bacbf627f7975fe599678fee48f83b5989543729e3600000000bc86cd51704f309130f5347413776a7b7bea3c46c0c4c4b7c27c45057d95ac85a41cdcee8e6fa31f7d2137ed1fb4b21c13b9a2c5e3f7c9ef9c45a35adbf0b9312be92986d63263b1aa5264cb4a82bc080de1f87808d0711dd76f2977ca7f2684bfa5c14a0cd6f1f561e34e4e8e51e81d4a355a7d00d917c16a2bb0cfb284fcfde9015769b9ee2c8ff10e934847604d930f62924d0562ce17f6dadf5053ed8f33092a41bb46e1878c5295fecc27f9c6d1f62da58c00020000000000009aa38a05e70591d5cdab1c268ef3c1984c7c0a566cfc2ab6e6fbc99ec206a54fb49056a555414178ef00d8b8f3c59f01eb5d83415994efcc6ec4b3c275cd6b1b5ff82ef7d7abb1d218e7a1d0afa285706841aac9ccc89df41c39dd58dd70569dde45f8ad62edc65828fbb6e279f745d2872f0208635e465ca443a6a64c7803760880af23fb3f430a5d11fffc96dd1cb951642f1433f65b4e170a62a5f7a8d0f9d5cef0d17289c43d4aee2127f7a343899434594cc23e1c864164e130754b337e560f285dc670a31241bf657babf0615b85dc200a10294b7d5885b43ac62fc7f97a85586168483427072a535f2cac81ec261c00f725de74e48d9a86f7d4a5d28d56ce6d571661dccad7ca6d961f525f799b4517141fc98af0673b8296f867eca1ec07be11bc497a6f7d2b752bcf77c2908b64630ed5a0c2261bc2d5de6ee174534b8dfc0432ab6bbcf296d36807544aa7c3d3301fe227b713a371414c98695e559f9cbf6b046184064a5f24a4cc6f41f21fc24a3ad7d20a89e00a9dc99a40f890869d35fba3ce6f29c661d322ba21c65badf55d1859ea7eabc5717a781f83292a3337d4dddc97f31390bb2addd4581f9e7ef3e2693b46a8fc85be061ce79aa2832c04dc04db8b6536123b24be2ef80eb06b2db900fb30596c1574bda31f"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x8, 0x10, 0x0}, 0x78) r2 = openat$cgroup_ro(0xffffffffffffffff, &(0x7f0000000080)='cpuacct.usage_user\x00', 0x0, 0x0) perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x2004, 0x0, 0x0, 0x0, 0x7, 0x0, 0x2}, 0x0, 0xffffffffffffffff, r2, 0x0) r3 = socket$inet_udp(0x2, 0x2, 0x0) close(r3) splice(0xffffffffffffffff, 0x0, r3, 0x0, 0x4ffdc, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000680)={0x15, 0x3, &(0x7f0000000540)=@raw=[@generic={0x7f, 0x0, 0x8, 0x6, 0x7}, @map={0x18, 0x6, 0x1, 0x0, r2}], &(0x7f0000000580)='GPL\x00', 0x5, 0x3, &(0x7f00000005c0)=""/3, 0x41100, 0x8, '\x00', 0x0, 0x1a, 0xffffffffffffffff, 0x8, &(0x7f0000000600)={0x2, 0x4}, 0x8, 0x10, &(0x7f0000000640)={0x3, 0x8, 0x7, 0x8}, 0x10, r0, r2}, 0x78) r4 = bpf$BPF_BTF_LOAD(0x12, &(0x7f00000003c0)={&(0x7f0000000000)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0x2, [@struct]}}, 0x0, 0x26}, 0x20) r5 = bpf$PROG_LOAD(0x5, &(0x7f00000000c0)={0xd, 0x3, &(0x7f0000000040)=@framed, &(0x7f0000000080)='GPL\x00', 0x5, 0x1f6, &(0x7f00000002c0)=""/168, 0xfa03, 0x0, '\x00', 0x0, 0x0, r4, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000200), 0x1}, 0x6d) bpf$BPF_GET_PROG_INFO(0xf, &(0x7f0000000800)={r5, 0x15f, &(0x7f0000000840)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ""/16, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, 0x10) bpf$PROG_LOAD(0x5, &(0x7f00000004c0)={0x0, 0x1, &(0x7f0000000780)=ANY=[], 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, r6}, 0x78) recvmsg(r2, &(0x7f0000001500)={&(0x7f0000000dc0)=@xdp, 0x80, &(0x7f0000001340)=[{&(0x7f0000000e40)=""/65, 0x41}, {&(0x7f0000000f40)=""/57, 0x39}, {&(0x7f0000000f80)=""/20, 0x14}, {&(0x7f0000001600)=""/4096, 0x1000}, {&(0x7f0000001180)=""/189, 0xbd}, {0x0}, {&(0x7f0000001280)=""/173, 0xad}], 0x7, &(0x7f0000001400)=""/218, 0xda}, 0x1) bpf$PROG_LOAD(0x5, &(0x7f00000001c0)={0x0, 0x5, &(0x7f0000000380)=ANY=[@ANYBLOB="18240000", @ANYRES32, @ANYBLOB="0000000005f655112d345944dd0f33f57a89bc0000000640520d0080000085100000faffffffc078fcff0000"], 0x0, 0x9, 0x5, &(0x7f00000000c0)=""/5, 0x0, 0x0, '\x00', 0x0, 0x23, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, &(0x7f0000000180)={0x3, 0xb, 0x100, 0x5}, 0x10, r6}, 0x78) dup(r1) 04:26:55 executing program 3: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) [ 1184.497178][T10511] input: syz0 as /devices/virtual/input/input40 [ 1184.497588][T10521] input: syz0 as /devices/virtual/input/input41 04:26:55 executing program 1: r0 = openat$fb1(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$FBIOPUT_VSCREENINFO(r0, 0x4601, &(0x7f00000000c0)={0x20, 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, {}, {0x0, 0x2}}) 04:26:55 executing program 4: openat$nvram(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) syz_open_dev$sg(&(0x7f0000000280), 0x0, 0x0) socket$inet_mptcp(0x2, 0x1, 0x106) socket$inet6_udplite(0xa, 0x2, 0x88) openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000080), 0x2, 0x0) socket$inet6_udplite(0xa, 0x2, 0x88) close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) pselect6(0x40, &(0x7f00000000c0), 0x0, &(0x7f0000000140)={0x1ff}, &(0x7f0000000200), 0x0) 04:26:55 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) 04:26:55 executing program 0: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) 04:26:55 executing program 5: perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3c4a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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 = openat$uinput(0xffffffffffffff9c, &(0x7f00000000c0), 0x802, 0x0) r1 = fcntl$dupfd(r0, 0x0, r0) ioctl$UI_ABS_SETUP(r0, 0x401c5504, &(0x7f0000000340)={0x400000100002f}) ioctl$UI_SET_EVBIT(r0, 0x40045564, 0x3) write$uinput_user_dev(r1, &(0x7f0000000800)={'syz0\x00', {}, 0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8050]}, 0x45c) ioctl$UI_DEV_CREATE(r0, 0x5501) 04:26:55 executing program 3: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) 04:26:55 executing program 1: r0 = openat$fb1(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$FBIOPUT_VSCREENINFO(r0, 0x4601, &(0x7f00000000c0)={0x20, 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, {}, {0x0, 0x2}}) 04:26:56 executing program 4: openat$nvram(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) syz_open_dev$sg(&(0x7f0000000280), 0x0, 0x0) socket$inet_mptcp(0x2, 0x1, 0x106) socket$inet6_udplite(0xa, 0x2, 0x88) openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000080), 0x2, 0x0) socket$inet6_udplite(0xa, 0x2, 0x88) close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) pselect6(0x40, &(0x7f00000000c0), 0x0, &(0x7f0000000140)={0x1ff}, &(0x7f0000000200), 0x0) [ 1185.018190][T10545] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready 04:26:56 executing program 0: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) 04:26:56 executing program 1: r0 = openat$fb1(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$FBIOPUT_VSCREENINFO(r0, 0x4601, &(0x7f00000000c0)={0x20, 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, {}, {0x0, 0x2}}) [ 1185.091020][T10553] input: syz0 as /devices/virtual/input/input43 [ 1185.128163][T10545] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready 04:26:56 executing program 4: openat$nvram(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) syz_open_dev$sg(&(0x7f0000000280), 0x0, 0x0) socket$inet_mptcp(0x2, 0x1, 0x106) socket$inet6_udplite(0xa, 0x2, 0x88) openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000080), 0x2, 0x0) socket$inet6_udplite(0xa, 0x2, 0x88) close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) pselect6(0x40, &(0x7f00000000c0), 0x0, &(0x7f0000000140)={0x1ff}, &(0x7f0000000200), 0x0) [ 1185.162167][T10545] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready 04:26:56 executing program 5: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x40014}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) getpid() perf_event_open(&(0x7f00000000c0)={0x0, 0x80, 0xac, 0x5, 0x5, 0x0, 0x0, 0x1, 0x59440, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, @perf_bp={&(0x7f0000000040)}, 0x2800, 0x200, 0x0, 0x2, 0x7, 0x7fffffff, 0x5}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f0000000400)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x61, 0x11, 0x98}, [@ldst={0x6, 0x0, 0x2}]}, &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000)={0x10000000}, 0x700, 0x10, &(0x7f0000000000), 0x76}, 0x48) 04:26:56 executing program 1: r0 = openat$fb1(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$FBIOPUT_VSCREENINFO(r0, 0x4601, &(0x7f00000000c0)={0x20, 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, {}, {0x0, 0x2}}) 04:26:56 executing program 0: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) [ 1185.518205][T10556] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.3'. [ 1185.758464][T10545] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1185.773867][T10545] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1185.782148][T10545] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready 04:26:56 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) 04:26:56 executing program 4: openat$nvram(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) syz_open_dev$sg(&(0x7f0000000280), 0x0, 0x0) socket$inet_mptcp(0x2, 0x1, 0x106) socket$inet6_udplite(0xa, 0x2, 0x88) openat$rdma_cm(0xffffffffffffff9c, &(0x7f0000000080), 0x2, 0x0) socket$inet6_udplite(0xa, 0x2, 0x88) close_range(0xffffffffffffffff, 0xffffffffffffffff, 0x2) pselect6(0x40, &(0x7f00000000c0), 0x0, &(0x7f0000000140)={0x1ff}, &(0x7f0000000200), 0x0) 04:26:56 executing program 1: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) [ 1185.812976][T10561] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.3'. 04:26:57 executing program 3: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) 04:26:57 executing program 5: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x40014}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) getpid() perf_event_open(&(0x7f00000000c0)={0x0, 0x80, 0xac, 0x5, 0x5, 0x0, 0x0, 0x1, 0x59440, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, @perf_bp={&(0x7f0000000040)}, 0x2800, 0x200, 0x0, 0x2, 0x7, 0x7fffffff, 0x5}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f0000000400)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x61, 0x11, 0x98}, [@ldst={0x6, 0x0, 0x2}]}, &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000)={0x10000000}, 0x700, 0x10, &(0x7f0000000000), 0x76}, 0x48) 04:26:57 executing program 0: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) 04:26:57 executing program 1: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) 04:26:57 executing program 4: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) 04:26:57 executing program 5: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x40014}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) getpid() perf_event_open(&(0x7f00000000c0)={0x0, 0x80, 0xac, 0x5, 0x5, 0x0, 0x0, 0x1, 0x59440, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, @perf_bp={&(0x7f0000000040)}, 0x2800, 0x200, 0x0, 0x2, 0x7, 0x7fffffff, 0x5}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f0000000400)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x61, 0x11, 0x98}, [@ldst={0x6, 0x0, 0x2}]}, &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000)={0x10000000}, 0x700, 0x10, &(0x7f0000000000), 0x76}, 0x48) [ 1186.210942][ T2990] Bluetooth: hci3: command 0x0419 tx timeout 04:26:57 executing program 0: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) [ 1186.297719][T10619] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready 04:26:57 executing program 1: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) 04:26:57 executing program 5: perf_event_open(&(0x7f0000000180)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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}, 0x40014}, 0x0, 0xbfffffffffffffff, 0xffffffffffffffff, 0x0) getpid() perf_event_open(&(0x7f00000000c0)={0x0, 0x80, 0xac, 0x5, 0x5, 0x0, 0x0, 0x1, 0x59440, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, @perf_bp={&(0x7f0000000040)}, 0x2800, 0x200, 0x0, 0x2, 0x7, 0x7fffffff, 0x5}, 0x0, 0x0, 0xffffffffffffffff, 0x0) bpf$PROG_LOAD(0x5, &(0x7f0000000440)={0xd, 0x4, &(0x7f0000000400)=@framed={{0xffffffb4, 0x0, 0x0, 0x0, 0x0, 0x61, 0x11, 0x98}, [@ldst={0x6, 0x0, 0x2}]}, &(0x7f0000000080)='GPL\x00', 0x4, 0x3e0, &(0x7f000000cf3d)=""/195, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000)={0x10000000}, 0x700, 0x10, &(0x7f0000000000), 0x76}, 0x48) [ 1186.405998][T10619] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1186.437140][T10619] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1186.696544][T10627] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.3'. 04:26:57 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) 04:26:57 executing program 0: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) 04:26:57 executing program 1: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) [ 1186.949496][T10635] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.4'. [ 1187.167064][T10664] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.0'. 04:26:58 executing program 3: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) 04:26:58 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) 04:26:58 executing program 4: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) [ 1187.442599][T10666] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1187.463671][T10666] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1187.499767][T10666] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1187.626963][T10663] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready 04:26:58 executing program 1: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) [ 1187.753657][T10663] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1187.787610][T10663] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1187.860011][T10702] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.4'. 04:26:58 executing program 0: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) 04:26:59 executing program 2: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) [ 1188.109220][T10703] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1188.173193][T10703] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1188.206902][T10703] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready 04:26:59 executing program 4: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) [ 1188.341017][T10708] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.3'. 04:26:59 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) [ 1188.562341][T10714] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1188.596963][T10714] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1188.621197][T10714] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready 04:26:59 executing program 3: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) [ 1188.716522][T10728] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.0'. 04:26:59 executing program 1: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) [ 1188.934545][T10737] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1188.959628][T10737] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1188.976764][T10737] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1189.013439][T10758] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.4'. 04:27:00 executing program 2: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) 04:27:00 executing program 0: r0 = getpgid(0x0) perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x1, 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_config_ext={0x0, 0x1}}, r0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) ppoll(0x0, 0x0, 0x0, 0x0, 0x0) r1 = socket$nl_route(0x10, 0x3, 0x0) r2 = socket(0x10, 0x3, 0x0) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$NBD_CMD_DISCONNECT(r4, &(0x7f00000001c0)={0x0, 0x0, &(0x7f0000000180)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) splice(0xffffffffffffffff, 0x0, 0xffffffffffffffff, 0x0, 0xfffd, 0x0) sendmsg$nl_route_sched(0xffffffffffffffff, &(0x7f0000000580)={0x0, 0x0, &(0x7f0000000540)={&(0x7f0000000380)=@delqdisc={0x5c, 0x25, 0x200, 0x70bd27, 0x25d7dbfb, {0x0, 0x0, 0x0, 0x0, {0x0, 0xfff2}, {0x2}, {0x2, 0x10}}, [@TCA_STAB={0x30, 0x8, 0x0, 0x1, [{{0x1c, 0x1, {0x20, 0x2, 0x20, 0x20, 0x1, 0x4, 0xfff, 0x5}}, {0xe, 0x2, [0x3f, 0x2, 0xb1, 0x40, 0x5]}}]}, @TCA_INGRESS_BLOCK={0x8}]}, 0x5c}}, 0x0) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000900010076657468"], 0x48}}, 0x0) ppoll(&(0x7f0000000340)=[{r2, 0x2040}], 0x1, &(0x7f00000004c0)={0x0, 0x3938700}, &(0x7f0000000500), 0x8) sendmsg$nl_route_sched(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000240)=@newqdisc={0x30, 0x24, 0xf0b, 0x0, 0x0, {0x0, 0x0, 0x0, r5, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_ingress={0xc}]}, 0x30}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000000140)={0x0, 0x6c, &(0x7f0000000180)={&(0x7f0000000800)=ANY=[@ANYBLOB="4c0000002c00270d08000000ff03000000000000", @ANYRES32=r5, @ANYBLOB="00000000000000000c0000000800010075333200200002001400"], 0x4c}}, 0x0) [ 1189.313263][T10761] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1189.381130][T10761] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1189.410398][T10761] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready 04:27:00 executing program 2: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) [ 1189.500927][T10781] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1189.579863][T10781] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready 04:27:00 executing program 5: perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x6}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8b18, &(0x7f0000000000)={'wlan1\x00'}) r1 = openat$sysfs(0xffffff9c, 0x0, 0x20001, 0x0) sendmsg$NL80211_CMD_SET_WIPHY_NETNS(0xffffffffffffffff, &(0x7f0000000240)={&(0x7f0000000040), 0xc, 0x0, 0x1, 0x0, 0x0, 0x20000004}, 0x8084) r2 = seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, 0x0) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f0000000100)={&(0x7f00000000c0)='fsi_master_gpio_crc_rsp_error\x00'}, 0x10) ioctl$AUTOFS_DEV_IOCTL_ASKUMOUNT(r1, 0xc018937d, &(0x7f0000000400)={{0x1, 0x1, 0x18, r2, {0x3ff}}, './file0\x00'}) syz_init_net_socket$nfc_llcp(0x27, 0x3, 0x1) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000180)={'wlan1\x00'}) openat$vcs(0xffffffffffffff9c, &(0x7f0000000080), 0x8002, 0x0) r3 = syz_open_procfs(0x0, 0x0) r4 = openat$ttyS3(0xffffffffffffff9c, 0x0, 0x0, 0x0) sendfile(r4, r3, 0x0, 0x0) r5 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r5, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000000)=@newlink={0x28, 0x10, 0x801, 0x0, 0x0, {}, [@IFLA_GROUP={0x8}]}, 0x28}}, 0x0) preadv(0xffffffffffffffff, &(0x7f0000000280), 0x18, 0xd9f, 0x0) [ 1189.648634][T10781] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1189.727120][T10782] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.3'. 04:27:00 executing program 4: r0 = socket$can_raw(0x1d, 0x3, 0x1) sendmmsg(r0, &(0x7f0000001440)=[{{&(0x7f0000000080)=@in6={0xa, 0x0, 0x0, @private2}, 0x80, 0x0}}], 0x1, 0x0) 04:27:01 executing program 1: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) clone(0x80000100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000000)=@raw={'raw\x00', 0x3c1, 0x3, 0x480, 0x0, 0x9403, 0x5, 0x2c0, 0x2c0, 0x3b0, 0x3d8, 0x3d8, 0x3b0, 0x3d8, 0x3, 0x0, {[{{@ipv6={@local, @mcast1, [], [], 'macvlan0\x00', 'veth0_to_bond\x00'}, 0x0, 0x298, 0x2c0, 0x0, {}, [@common=@inet=@recent0={{0xf8}, {0x0, 0x0, 0x4, 0x0, 'syz0\x00'}}, @common=@inet=@recent0={{0xf8}, {0x0, 0x0, 0x1, 0x0, 'syz0\x00'}}]}, @common=@inet=@SET1={0x28}}, {{@ipv6={@private2, @mcast2, [], [], 'veth1_to_bond\x00', 'rose0\x00'}, 0x0, 0xd0, 0xf0, 0x0, {}, [@inet=@rpfilter={{0x28}}]}, @unspec=@NOTRACK={0x20}}], {{'\x00', 0x0, 0xa8, 0xd0}, {0x28}}}}, 0x52e) [ 1189.912473][T10805] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.0'. 04:27:01 executing program 2: 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 = openat$ttyS3(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$TIOCSETD(r0, 0x5423, &(0x7f00000000c0)=0x2) ioctl$TIOCVHANGUP(r0, 0x5437, 0x0) r1 = io_uring_setup(0x6d1c, &(0x7f0000000000)) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, 0x0, 0x0) io_uring_register$IORING_REGISTER_FILES_UPDATE(r1, 0x6, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000100)=[0xffffffffffffffff]}, 0x1) 04:27:01 executing program 3: socket$inet_udp(0x2, 0x2, 0x0) r0 = socket$inet6_tcp(0xa, 0x1, 0x0) r1 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 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_config_ext={0x0, 0x12}, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) r2 = syz_open_dev$loop(&(0x7f00000001c0), 0x75f, 0x103382) r3 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) ioprio_get$pid(0x1, 0x0) pwritev(r3, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81805, 0x0) r4 = getpgid(0x0) syz_open_procfs(r4, &(0x7f0000000480)='net/vlan/vlan1\x00') waitid(0x0, 0x0, &(0x7f0000000400), 0x2, 0x0) ioctl$LOOP_CHANGE_FD(r2, 0x4c00, r3) ioctl$FICLONERANGE(0xffffffffffffffff, 0x4020940d, &(0x7f00000003c0)={{r1}, 0x0, 0x54fc, 0x1}) sendfile(r2, r2, 0x0, 0x24002da8) splice(0xffffffffffffffff, &(0x7f0000000040)=0x40, 0xffffffffffffffff, &(0x7f00000000c0)=0xffffffff, 0x94b, 0x9) ioctl$sock_SIOCGPGRP(0xffffffffffffffff, 0x8904, &(0x7f0000000180)) ioctl$LOOP_SET_STATUS(r2, 0x4c02, &(0x7f0000000780)={0x0, {}, 0x0, {}, 0x0, 0x1, 0x1d, 0x9, "2bbb19e5631df896ba98674d0b4703551f0d03e2ed186049da15bffbdd1a3e02c2dda1e04e6fcd5ce9801d897649292487be6979a0b60bafc062c41c7373af99", "fd623e81b1486a5e6fab919c545f72d339f1538f1d1c4b68318117e2a6badf49", [0x7]}) ioctl$LOOP_CLR_FD(r2, 0x4c01) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000000)=@raw={'raw\x00', 0x3c1, 0x3, 0x328, 0x0, 0x17c, 0x17c, 0x17c, 0x5, 0x260, 0x260, 0x260, 0x260, 0x260, 0x3, 0x0, {[{{@uncond, 0x0, 0x114, 0x17c, 0x52020000, {}, [@common=@unspec=@time={{0x38}}, @common=@unspec=@statistic={{0x38}}]}, @unspec=@CT1={0x68, 'CT\x00', 0x1, {0x0, 0x0, 0x0, 0x0, 'netbios-ns\x00', 'syz1\x00'}}}, {{@ipv6={@mcast2, @empty, [], [], 'ip6tnl0\x00', 'veth1_to_batadv\x00'}, 0x0, 0xa4, 0xe4}, @common=@inet=@TCPOPTSTRIP={0x40}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x384) 04:27:01 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r3, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000040)=ANY=[@ANYBLOB="3c0000001000010400eeffff11ffffffff000000", @ANYRES32=r4, @ANYBLOB="01000000010000001c0012000c000100627269646765"], 0x3c}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000005840)={0x0, 0x0, &(0x7f00000005c0)={&(0x7f0000000940)=@newqdisc={0x2c, 0x24, 0x5820a61ca228651, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_drr={0x8}]}, 0x2c}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000600)=@newtfilter={0x4c, 0x2c, 0xd27, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {}, {0xffff}}, [@filter_kind_options=@f_u32={{0x8}, {0x20, 0x2, [@TCA_U32_SEL={0x14}, @TCA_U32_CLASSID={0x8}]}}]}, 0x4c}}, 0x0) 04:27:01 executing program 4: r0 = socket$can_raw(0x1d, 0x3, 0x1) sendmmsg(r0, &(0x7f0000001440)=[{{&(0x7f0000000080)=@in6={0xa, 0x0, 0x0, @private2}, 0x80, 0x0}}], 0x1, 0x0) [ 1190.109562][T10843] Cannot find add_set index 0 as target [ 1190.134645][T10834] IPv6: ADDRCONF(NETDEV_CHANGE): vcan0: link becomes ready [ 1190.217940][T10834] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 1190.238490][ C1] I/O error, dev loop7, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 30 prio class 0 [ 1190.281266][ C1] I/O error, dev loop7, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [ 1190.283320][T10834] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 1190.290489][ C1] buffer_io_error: 40 callbacks suppressed [ 1190.290505][ C1] Buffer I/O error on dev loop7, logical block 0, async page read 04:27:01 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) timer_create(0x3, 0x0, &(0x7f00000003c0)) timer_settime(0x0, 0x0, &(0x7f00000002c0)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) [ 1190.426925][T10859] netlink: 12 bytes leftover after parsing attributes in process `syz-executor.1'. 04:27:01 executing program 4: r0 = socket$can_raw(0x1d, 0x3, 0x1) sendmmsg(r0, &(0x7f0000001440)=[{{&(0x7f0000000080)=@in6={0xa, 0x0, 0x0, @private2}, 0x80, 0x0}}], 0x1, 0x0) [ 1190.478144][T10857] loop7: detected capacity change from 0 to 1036 04:27:01 executing program 0: r0 = openat$qat_adf_ctl(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$IOCTL_GET_NUM_DEVICES(r0, 0x40046104, &(0x7f0000000000)) 04:27:01 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}, {&(0x7f0000000140)="66530700ae897094e7b126b097eaa7", 0xf}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x0) tkill(r0, 0x30) ptrace$cont(0x18, r0, 0x0, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) ptrace$cont(0x9, r0, 0x0, 0x1f) [ 1190.561901][T10862] netlink: 12 bytes leftover after parsing attributes in process `syz-executor.1'. 04:27:01 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) timer_create(0x3, 0x0, &(0x7f00000003c0)) timer_settime(0x0, 0x0, &(0x7f00000002c0)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) 04:27:01 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r3, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000040)=ANY=[@ANYBLOB="3c0000001000010400eeffff11ffffffff000000", @ANYRES32=r4, @ANYBLOB="01000000010000001c0012000c000100627269646765"], 0x3c}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000005840)={0x0, 0x0, &(0x7f00000005c0)={&(0x7f0000000940)=@newqdisc={0x2c, 0x24, 0x5820a61ca228651, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_drr={0x8}]}, 0x2c}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000600)=@newtfilter={0x4c, 0x2c, 0xd27, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {}, {0xffff}}, [@filter_kind_options=@f_u32={{0x8}, {0x20, 0x2, [@TCA_U32_SEL={0x14}, @TCA_U32_CLASSID={0x8}]}}]}, 0x4c}}, 0x0) 04:27:01 executing program 4: r0 = socket$can_raw(0x1d, 0x3, 0x1) sendmmsg(r0, &(0x7f0000001440)=[{{&(0x7f0000000080)=@in6={0xa, 0x0, 0x0, @private2}, 0x80, 0x0}}], 0x1, 0x0) [ 1190.717096][T10850] I/O error, dev loop7, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [ 1190.755568][T10850] Buffer I/O error on dev loop7, logical block 0, async page read 04:27:01 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) timer_create(0x3, 0x0, &(0x7f00000003c0)) timer_settime(0x0, 0x0, &(0x7f00000002c0)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) 04:27:01 executing program 0: r0 = openat$qat_adf_ctl(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$IOCTL_GET_NUM_DEVICES(r0, 0x40046104, &(0x7f0000000000)) [ 1190.780966][T10890] netlink: 12 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1190.788282][T10850] ldm_validate_partition_table(): Disk read failed. [ 1190.832665][T10850] Dev loop7: unable to read RDB block 0 [ 1190.863261][T10850] loop7: unable to read partition table [ 1190.887626][T10850] loop7: partition table beyond EOD, truncated [ 1190.921226][T10850] loop_reread_partitions: partition scan of loop7 () failed (rc=-5) 04:27:02 executing program 3: socket$inet_udp(0x2, 0x2, 0x0) r0 = socket$inet6_tcp(0xa, 0x1, 0x0) r1 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 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_config_ext={0x0, 0x12}, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) r2 = syz_open_dev$loop(&(0x7f00000001c0), 0x75f, 0x103382) r3 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) ioprio_get$pid(0x1, 0x0) pwritev(r3, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81805, 0x0) r4 = getpgid(0x0) syz_open_procfs(r4, &(0x7f0000000480)='net/vlan/vlan1\x00') waitid(0x0, 0x0, &(0x7f0000000400), 0x2, 0x0) ioctl$LOOP_CHANGE_FD(r2, 0x4c00, r3) ioctl$FICLONERANGE(0xffffffffffffffff, 0x4020940d, &(0x7f00000003c0)={{r1}, 0x0, 0x54fc, 0x1}) sendfile(r2, r2, 0x0, 0x24002da8) splice(0xffffffffffffffff, &(0x7f0000000040)=0x40, 0xffffffffffffffff, &(0x7f00000000c0)=0xffffffff, 0x94b, 0x9) ioctl$sock_SIOCGPGRP(0xffffffffffffffff, 0x8904, &(0x7f0000000180)) ioctl$LOOP_SET_STATUS(r2, 0x4c02, &(0x7f0000000780)={0x0, {}, 0x0, {}, 0x0, 0x1, 0x1d, 0x9, "2bbb19e5631df896ba98674d0b4703551f0d03e2ed186049da15bffbdd1a3e02c2dda1e04e6fcd5ce9801d897649292487be6979a0b60bafc062c41c7373af99", "fd623e81b1486a5e6fab919c545f72d339f1538f1d1c4b68318117e2a6badf49", [0x7]}) ioctl$LOOP_CLR_FD(r2, 0x4c01) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000000)=@raw={'raw\x00', 0x3c1, 0x3, 0x328, 0x0, 0x17c, 0x17c, 0x17c, 0x5, 0x260, 0x260, 0x260, 0x260, 0x260, 0x3, 0x0, {[{{@uncond, 0x0, 0x114, 0x17c, 0x52020000, {}, [@common=@unspec=@time={{0x38}}, @common=@unspec=@statistic={{0x38}}]}, @unspec=@CT1={0x68, 'CT\x00', 0x1, {0x0, 0x0, 0x0, 0x0, 'netbios-ns\x00', 'syz1\x00'}}}, {{@ipv6={@mcast2, @empty, [], [], 'ip6tnl0\x00', 'veth1_to_batadv\x00'}, 0x0, 0xa4, 0xe4}, @common=@inet=@TCPOPTSTRIP={0x40}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x384) 04:27:02 executing program 4: r0 = add_key$keyring(&(0x7f0000000280), &(0x7f00000001c0)={'syz', 0x2}, 0x0, 0x0, 0xffffffffffffffff) keyctl$revoke(0x3, r0) r1 = add_key$keyring(&(0x7f0000000480), &(0x7f00000004c0)={'syz', 0x0}, 0x0, 0x0, 0xfffffffffffffffe) add_key$keyring(&(0x7f0000000280), &(0x7f00000001c0)={'syz', 0x3}, 0x0, 0x0, r1) 04:27:02 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r3, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000040)=ANY=[@ANYBLOB="3c0000001000010400eeffff11ffffffff000000", @ANYRES32=r4, @ANYBLOB="01000000010000001c0012000c000100627269646765"], 0x3c}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000005840)={0x0, 0x0, &(0x7f00000005c0)={&(0x7f0000000940)=@newqdisc={0x2c, 0x24, 0x5820a61ca228651, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_drr={0x8}]}, 0x2c}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000600)=@newtfilter={0x4c, 0x2c, 0xd27, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {}, {0xffff}}, [@filter_kind_options=@f_u32={{0x8}, {0x20, 0x2, [@TCA_U32_SEL={0x14}, @TCA_U32_CLASSID={0x8}]}}]}, 0x4c}}, 0x0) 04:27:02 executing program 0: r0 = openat$qat_adf_ctl(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$IOCTL_GET_NUM_DEVICES(r0, 0x40046104, &(0x7f0000000000)) 04:27:02 executing program 2: prlimit64(0x0, 0xe, &(0x7f0000000280)={0x9, 0x8d}, 0x0) sched_setattr(0x0, &(0x7f0000000140)={0x38, 0x2, 0x0, 0x0, 0x9}, 0x0) timer_create(0x3, 0x0, &(0x7f00000003c0)) timer_settime(0x0, 0x0, &(0x7f00000002c0)={{0x0, 0x989680}, {0x0, 0x1c9c380}}, 0x0) 04:27:02 executing program 0: r0 = openat$qat_adf_ctl(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) perf_event_open(&(0x7f00000001c0)={0x2, 0x80, 0xde, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0xffffffffffffffff, 0x0) ioctl$IOCTL_GET_NUM_DEVICES(r0, 0x40046104, &(0x7f0000000000)) [ 1191.125479][T10911] netlink: 12 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1191.213453][T10913] loop7: detected capacity change from 0 to 1036 04:27:04 executing program 5: socket$inet_udp(0x2, 0x2, 0x0) r0 = socket$inet6_tcp(0xa, 0x1, 0x0) r1 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 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_config_ext={0x0, 0x12}, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) r2 = syz_open_dev$loop(&(0x7f00000001c0), 0x75f, 0x103382) r3 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) ioprio_get$pid(0x1, 0x0) pwritev(r3, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81805, 0x0) r4 = getpgid(0x0) syz_open_procfs(r4, &(0x7f0000000480)='net/vlan/vlan1\x00') waitid(0x0, 0x0, &(0x7f0000000400), 0x2, 0x0) ioctl$LOOP_CHANGE_FD(r2, 0x4c00, r3) ioctl$FICLONERANGE(0xffffffffffffffff, 0x4020940d, &(0x7f00000003c0)={{r1}, 0x0, 0x54fc, 0x1}) sendfile(r2, r2, 0x0, 0x24002da8) splice(0xffffffffffffffff, &(0x7f0000000040)=0x40, 0xffffffffffffffff, &(0x7f00000000c0)=0xffffffff, 0x94b, 0x9) ioctl$sock_SIOCGPGRP(0xffffffffffffffff, 0x8904, &(0x7f0000000180)) ioctl$LOOP_SET_STATUS(r2, 0x4c02, &(0x7f0000000780)={0x0, {}, 0x0, {}, 0x0, 0x1, 0x1d, 0x9, "2bbb19e5631df896ba98674d0b4703551f0d03e2ed186049da15bffbdd1a3e02c2dda1e04e6fcd5ce9801d897649292487be6979a0b60bafc062c41c7373af99", "fd623e81b1486a5e6fab919c545f72d339f1538f1d1c4b68318117e2a6badf49", [0x7]}) ioctl$LOOP_CLR_FD(r2, 0x4c01) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000000)=@raw={'raw\x00', 0x3c1, 0x3, 0x328, 0x0, 0x17c, 0x17c, 0x17c, 0x5, 0x260, 0x260, 0x260, 0x260, 0x260, 0x3, 0x0, {[{{@uncond, 0x0, 0x114, 0x17c, 0x52020000, {}, [@common=@unspec=@time={{0x38}}, @common=@unspec=@statistic={{0x38}}]}, @unspec=@CT1={0x68, 'CT\x00', 0x1, {0x0, 0x0, 0x0, 0x0, 'netbios-ns\x00', 'syz1\x00'}}}, {{@ipv6={@mcast2, @empty, [], [], 'ip6tnl0\x00', 'veth1_to_batadv\x00'}, 0x0, 0xa4, 0xe4}, @common=@inet=@TCPOPTSTRIP={0x40}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x384) 04:27:04 executing program 4: r0 = add_key$keyring(&(0x7f0000000280), &(0x7f00000001c0)={'syz', 0x2}, 0x0, 0x0, 0xffffffffffffffff) keyctl$revoke(0x3, r0) r1 = add_key$keyring(&(0x7f0000000480), &(0x7f00000004c0)={'syz', 0x0}, 0x0, 0x0, 0xfffffffffffffffe) add_key$keyring(&(0x7f0000000280), &(0x7f00000001c0)={'syz', 0x3}, 0x0, 0x0, r1) 04:27:04 executing program 2: socket$inet_udp(0x2, 0x2, 0x0) r0 = socket$inet6_tcp(0xa, 0x1, 0x0) r1 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 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_config_ext={0x0, 0x12}, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) r2 = syz_open_dev$loop(&(0x7f00000001c0), 0x75f, 0x103382) r3 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) ioprio_get$pid(0x1, 0x0) pwritev(r3, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81805, 0x0) r4 = getpgid(0x0) syz_open_procfs(r4, &(0x7f0000000480)='net/vlan/vlan1\x00') waitid(0x0, 0x0, &(0x7f0000000400), 0x2, 0x0) ioctl$LOOP_CHANGE_FD(r2, 0x4c00, r3) ioctl$FICLONERANGE(0xffffffffffffffff, 0x4020940d, &(0x7f00000003c0)={{r1}, 0x0, 0x54fc, 0x1}) sendfile(r2, r2, 0x0, 0x24002da8) splice(0xffffffffffffffff, &(0x7f0000000040)=0x40, 0xffffffffffffffff, &(0x7f00000000c0)=0xffffffff, 0x94b, 0x9) ioctl$sock_SIOCGPGRP(0xffffffffffffffff, 0x8904, &(0x7f0000000180)) ioctl$LOOP_SET_STATUS(r2, 0x4c02, &(0x7f0000000780)={0x0, {}, 0x0, {}, 0x0, 0x1, 0x1d, 0x9, "2bbb19e5631df896ba98674d0b4703551f0d03e2ed186049da15bffbdd1a3e02c2dda1e04e6fcd5ce9801d897649292487be6979a0b60bafc062c41c7373af99", "fd623e81b1486a5e6fab919c545f72d339f1538f1d1c4b68318117e2a6badf49", [0x7]}) ioctl$LOOP_CLR_FD(r2, 0x4c01) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000000)=@raw={'raw\x00', 0x3c1, 0x3, 0x328, 0x0, 0x17c, 0x17c, 0x17c, 0x5, 0x260, 0x260, 0x260, 0x260, 0x260, 0x3, 0x0, {[{{@uncond, 0x0, 0x114, 0x17c, 0x52020000, {}, [@common=@unspec=@time={{0x38}}, @common=@unspec=@statistic={{0x38}}]}, @unspec=@CT1={0x68, 'CT\x00', 0x1, {0x0, 0x0, 0x0, 0x0, 'netbios-ns\x00', 'syz1\x00'}}}, {{@ipv6={@mcast2, @empty, [], [], 'ip6tnl0\x00', 'veth1_to_batadv\x00'}, 0x0, 0xa4, 0xe4}, @common=@inet=@TCPOPTSTRIP={0x40}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x384) 04:27:04 executing program 1: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket(0x10, 0x3, 0x0) r2 = socket$nl_route(0x10, 0x3, 0x0) r3 = socket(0x10, 0x803, 0x0) sendmsg$BATADV_CMD_GET_MESH(r3, &(0x7f00000004c0)={0x0, 0x0, &(0x7f0000000480)={0x0}}, 0x0) getsockname$packet(r3, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000200)=0x14) sendmsg$nl_route(r2, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000040)=ANY=[@ANYBLOB="3c0000001000010400eeffff11ffffffff000000", @ANYRES32=r4, @ANYBLOB="01000000010000001c0012000c000100627269646765"], 0x3c}}, 0x0) sendmsg$nl_route_sched(r1, &(0x7f0000005840)={0x0, 0x0, &(0x7f00000005c0)={&(0x7f0000000940)=@newqdisc={0x2c, 0x24, 0x5820a61ca228651, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_drr={0x8}]}, 0x2c}}, 0x0) sendmsg$nl_route_sched(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f00000001c0)={&(0x7f0000000600)=@newtfilter={0x4c, 0x2c, 0xd27, 0x0, 0x0, {0x0, 0x0, 0x0, r4, {}, {}, {0xffff}}, [@filter_kind_options=@f_u32={{0x8}, {0x20, 0x2, [@TCA_U32_SEL={0x14}, @TCA_U32_CLASSID={0x8}]}}]}, 0x4c}}, 0x0) 04:27:04 executing program 0: socket$inet_udp(0x2, 0x2, 0x0) r0 = socket$inet6_tcp(0xa, 0x1, 0x0) r1 = perf_event_open(&(0x7f0000000700)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 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_config_ext={0x0, 0x12}, 0x0, 0x0, 0x0, 0x0, 0x1}, 0x0, 0xff7fffffffffffff, 0xffffffffffffffff, 0x0) r2 = syz_open_dev$loop(&(0x7f00000001c0), 0x75f, 0x103382) r3 = memfd_create(&(0x7f0000000240)='.^\xc5', 0x0) ioprio_get$pid(0x1, 0x0) pwritev(r3, &(0x7f0000000540)=[{&(0x7f0000000000)='B', 0x1}], 0x1, 0x81805, 0x0) r4 = getpgid(0x0) syz_open_procfs(r4, &(0x7f0000000480)='net/vlan/vlan1\x00') waitid(0x0, 0x0, &(0x7f0000000400), 0x2, 0x0) ioctl$LOOP_CHANGE_FD(r2, 0x4c00, r3) ioctl$FICLONERANGE(0xffffffffffffffff, 0x4020940d, &(0x7f00000003c0)={{r1}, 0x0, 0x54fc, 0x1}) sendfile(r2, r2, 0x0, 0x24002da8) splice(0xffffffffffffffff, &(0x7f0000000040)=0x40, 0xffffffffffffffff, &(0x7f00000000c0)=0xffffffff, 0x94b, 0x9) ioctl$sock_SIOCGPGRP(0xffffffffffffffff, 0x8904, &(0x7f0000000180)) ioctl$LOOP_SET_STATUS(r2, 0x4c02, &(0x7f0000000780)={0x0, {}, 0x0, {}, 0x0, 0x1, 0x1d, 0x9, "2bbb19e5631df896ba98674d0b4703551f0d03e2ed186049da15bffbdd1a3e02c2dda1e04e6fcd5ce9801d897649292487be6979a0b60bafc062c41c7373af99", "fd623e81b1486a5e6fab919c545f72d339f1538f1d1c4b68318117e2a6badf49", [0x7]}) ioctl$LOOP_CLR_FD(r2, 0x4c01) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000000)=@raw={'raw\x00', 0x3c1, 0x3, 0x328, 0x0, 0x17c, 0x17c, 0x17c, 0x5, 0x260, 0x260, 0x260, 0x260, 0x260, 0x3, 0x0, {[{{@uncond, 0x0, 0x114, 0x17c, 0x52020000, {}, [@common=@unspec=@time={{0x38}}, @common=@unspec=@statistic={{0x38}}]}, @unspec=@CT1={0x68, 'CT\x00', 0x1, {0x0, 0x0, 0x0, 0x0, 'netbios-ns\x00', 'syz1\x00'}}}, {{@ipv6={@mcast2, @empty, [], [], 'ip6tnl0\x00', 'veth1_to_batadv\x00'}, 0x0, 0xa4, 0xe4}, @common=@inet=@TCPOPTSTRIP={0x40}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x384) 04:27:04 executing program 4: r0 = add_key$keyring(&(0x7f0000000280), &(0x7f00000001c0)={'syz', 0x2}, 0x0, 0x0, 0xffffffffffffffff) keyctl$revoke(0x3, r0) r1 = add_key$keyring(&(0x7f0000000480), &(0x7f00000004c0)={'syz', 0x0}, 0x0, 0x0, 0xfffffffffffffffe) add_key$keyring(&(0x7f0000000280), &(0x7f00000001c0)={'syz', 0x3}, 0x0, 0x0, r1) [ 1193.790478][T10952] netlink: 12 bytes leftover after parsing attributes in process `syz-executor.1'. [ 1237.972322][ T1224] ieee802154 phy0 wpan0: encryption failed: -22 [ 1237.978632][ T1224] ieee802154 phy1 wpan1: encryption failed: -22 [ 1299.413232][ T1224] ieee802154 phy0 wpan0: encryption failed: -22 [ 1299.419739][ T1224] ieee802154 phy1 wpan1: encryption failed: -22 [ 1301.490757][T14159] Bluetooth: hci3: command 0x0406 tx timeout [ 1349.331063][ T27] INFO: task syz-executor.3:10913 blocked for more than 143 seconds. [ 1349.340797][ T27] Not tainted 5.16.0-rc1-syzkaller #0 [ 1349.346937][ T27] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1349.357165][ T27] task:syz-executor.3 state:D stack:24048 pid:10913 ppid: 8089 flags:0x00004004 [ 1349.366537][ T27] Call Trace: [ 1349.369831][ T27] [ 1349.372961][ T27] __schedule+0xa9a/0x4940 [ 1349.377515][ T27] ? io_schedule_timeout+0x180/0x180 [ 1349.383074][ T27] ? _raw_spin_unlock_irqrestore+0x50/0x70 [ 1349.388905][ T27] ? lockdep_hardirqs_on+0x79/0x100 [ 1349.394211][ T27] ? _raw_spin_unlock_irqrestore+0x3d/0x70 [ 1349.400062][ T27] schedule+0xd2/0x260 [ 1349.404257][ T27] __bio_queue_enter+0x3c5/0x6a0 [ 1349.409239][ T27] ? blk_queue_enter+0x5b0/0x5b0 [ 1349.414286][ T27] ? blk_mq_submit_bio+0x481/0x22c0 [ 1349.419603][ T27] ? finish_wait+0x270/0x270 [ 1349.424270][ T27] blk_mq_submit_bio+0x4ae/0x22c0 [ 1349.429311][ T27] ? blk_mq_try_issue_list_directly+0x4d0/0x4d0 [ 1349.436377][ T27] ? __bio_add_page+0x377/0x540 [ 1349.443564][ T27] ? bio_add_page+0x186/0x1f0 [ 1349.448281][ T27] ? __bio_try_merge_page+0x360/0x360 [ 1349.453804][ T27] ? find_held_lock+0x2d/0x110 [ 1349.458682][ T27] submit_bio_noacct+0x82c/0xa20 [ 1349.463899][ T27] ? __submit_bio_fops+0x290/0x290 [ 1349.469046][ T27] submit_bio+0x1ea/0x430 [ 1349.473944][ T27] ? submit_bio_noacct+0xa20/0xa20 [ 1349.479118][ T27] ? __sanitizer_cov_trace_pc+0x49/0x60 [ 1349.485725][ T27] mpage_readahead+0x589/0x750 [ 1349.492235][ T27] ? do_mpage_readpage+0x1f80/0x1f80 [ 1349.497555][ T27] ? __blkdev_direct_IO_simple+0x860/0x860 [ 1349.504072][ T27] ? folio_add_lru+0x353/0x6a0 [ 1349.509032][ T27] ? lock_downgrade+0x6e0/0x6e0 [ 1349.514122][ T27] ? blkdev_write_begin+0x40/0x40 [ 1349.519171][ T27] read_pages+0x1e4/0xfa0 [ 1349.523655][ T27] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1349.529924][ T27] ? folio_add_lru+0x389/0x6a0 [ 1349.534808][ T27] ? readahead_expand+0x8b0/0x8b0 [ 1349.539876][ T27] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1349.546400][ T27] ? folio_alloc+0x3f/0x70 [ 1349.552701][ T27] ? __sanitizer_cov_trace_const_cmp8+0x1d/0x70 [ 1349.559012][ T27] page_cache_ra_unbounded+0x64b/0x940 [ 1349.564697][ T27] ? read_pages+0xfa0/0xfa0 [ 1349.569247][ T27] ? lock_downgrade+0x6e0/0x6e0 [ 1349.574413][ T27] ondemand_readahead+0x594/0x1090 [ 1349.579558][ T27] page_cache_async_ra+0x2e1/0x3f0 [ 1349.586063][ T27] filemap_get_pages+0x6f1/0x1be0 [ 1349.591444][ T27] ? sanity+0x228/0x2f0 [ 1349.595618][ T27] ? kasan_check_range+0xcb/0x180 [ 1349.600850][ T27] ? filemap_get_read_batch+0xad0/0xad0 [ 1349.606704][ T27] ? __sanitizer_cov_trace_const_cmp8+0x1d/0x70 [ 1349.613554][ T27] ? copy_page_to_iter+0x5b4/0xe20 [ 1349.618930][ T27] filemap_read+0x315/0xeb0 [ 1349.624831][ T27] ? filemap_get_pages+0x1be0/0x1be0 [ 1349.630166][ T27] ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 1349.637465][ T27] generic_file_read_iter+0x3b6/0x5a0 [ 1349.644298][ T27] blkdev_read_iter+0xf8/0x1d0 [ 1349.649121][ T27] generic_file_splice_read+0x453/0x6d0 [ 1349.656264][ T27] ? generic_splice_sendpage+0x140/0x140 [ 1349.663938][ T27] ? folio_flags.constprop.0+0x70/0x70 [ 1349.669466][ T27] ? security_file_permission+0xab/0xd0 [ 1349.675617][ T27] ? folio_flags.constprop.0+0x70/0x70 [ 1349.682100][ T27] do_splice_to+0x1bf/0x250 [ 1349.687095][ T27] ? direct_splice_actor+0x118/0x180 [ 1349.693477][ T27] splice_direct_to_actor+0x2c2/0x8c0 [ 1349.698909][ T27] ? generic_file_splice_read+0x6d0/0x6d0 [ 1349.705123][ T27] ? do_splice_to+0x250/0x250 [ 1349.710458][ T27] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1349.717322][ T27] ? security_file_permission+0xab/0xd0 [ 1349.723511][ T27] do_splice_direct+0x1b3/0x280 [ 1349.728405][ T27] ? splice_direct_to_actor+0x8c0/0x8c0 [ 1349.735450][ T27] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1349.743299][ T27] ? security_file_permission+0xab/0xd0 [ 1349.748926][ T27] do_sendfile+0xaf2/0x1250 [ 1349.753729][ T27] ? do_pwritev+0x270/0x270 [ 1349.758630][ T27] ? irqentry_enter+0x28/0x50 [ 1349.763873][ T27] ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 1349.770093][ T27] ? lockdep_hardirqs_on+0x79/0x100 [ 1349.776143][ T27] __x64_sys_sendfile64+0x1cc/0x210 [ 1349.782095][ T27] ? __ia32_sys_sendfile+0x220/0x220 [ 1349.787448][ T27] ? syscall_enter_from_user_mode+0x2b/0x70 [ 1349.794407][ T27] do_syscall_64+0x35/0xb0 [ 1349.799291][ T27] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 1349.805338][ T27] RIP: 0033:0x7f5ed093fae9 [ 1349.809782][ T27] RSP: 002b:00007f5ecdeb5188 EFLAGS: 00000246 ORIG_RAX: 0000000000000028 [ 1349.818744][ T27] RAX: ffffffffffffffda RBX: 00007f5ed0a52f60 RCX: 00007f5ed093fae9 [ 1349.826921][ T27] RDX: 0000000000000000 RSI: 0000000000000006 RDI: 0000000000000006 [ 1349.835113][ T27] RBP: 00007f5ed0999f6d R08: 0000000000000000 R09: 0000000000000000 [ 1349.843188][ T27] R10: 0000000024002da8 R11: 0000000000000246 R12: 0000000000000000 [ 1349.851375][ T27] R13: 00007ffc30db33ef R14: 00007f5ecdeb5300 R15: 0000000000022000 [ 1349.859411][ T27] [ 1349.862737][ T27] INFO: task syz-executor.3:10921 blocked for more than 143 seconds. [ 1349.871176][ T27] Not tainted 5.16.0-rc1-syzkaller #0 [ 1349.877082][ T27] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 1349.887087][ T27] task:syz-executor.3 state:D stack:27720 pid:10921 ppid: 8089 flags:0x00000004 [ 1349.898066][ T27] Call Trace: [ 1349.901982][ T27] [ 1349.904931][ T27] __schedule+0xa9a/0x4940 [ 1349.909371][ T27] ? io_schedule_timeout+0x180/0x180 [ 1349.914882][ T27] ? _raw_spin_unlock_irqrestore+0x50/0x70 [ 1349.921177][ T27] schedule+0xd2/0x260 [ 1349.925282][ T27] blk_mq_freeze_queue_wait+0x112/0x160 [ 1349.931016][ T27] ? blk_mq_queue_inflight+0xa0/0xa0 [ 1349.936837][ T27] ? __sanitizer_cov_trace_cmp4+0x1c/0x70 [ 1349.943409][ T27] ? finish_wait+0x270/0x270 [ 1349.948188][ T27] loop_set_status+0x17d/0x930 [ 1349.953343][ T27] loop_set_status_old+0x148/0x1b0 [ 1349.959069][ T27] ? loop_set_status_compat+0x100/0x100 [ 1349.965622][ T27] ? filter_irq_stacks+0x90/0x90 [ 1349.970895][ T27] ? tomoyo_path_number_perm+0x441/0x590 [ 1349.976683][ T27] ? security_file_ioctl+0x50/0xb0 [ 1349.982287][ T27] ? __x64_sys_ioctl+0xb3/0x200 [ 1349.987157][ T27] ? do_syscall_64+0x35/0xb0 [ 1349.993329][ T27] ? entry_SYSCALL_64_after_hwframe+0x44/0xae [ 1349.999746][ T27] ? perf_trace_lock+0xeb/0x4d0 [ 1350.005004][ T27] ? _raw_spin_unlock_irqrestore+0x50/0x70 [ 1350.010978][ T27] ? __sanitizer_cov_trace_switch+0x63/0xf0 [ 1350.016898][ T27] lo_ioctl+0x3e9/0x17c0 [ 1350.021306][ T27] ? find_held_lock+0x2d/0x110 [ 1350.026093][ T27] ? loop_set_status_old+0x1b0/0x1b0 [ 1350.031504][ T27] ? tomoyo_path_number_perm+0x204/0x590 [ 1350.037165][ T27] ? lock_downgrade+0x6e0/0x6e0 [ 1350.042141][ T27] ? tomoyo_path_number_perm+0x441/0x590 [ 1350.048847][ T27] ? kfree+0xf6/0x560 [ 1350.053731][ T27] ? __sanitizer_cov_trace_const_cmp2+0x22/0x80 [ 1350.060083][ T27] ? __sanitizer_cov_trace_const_cmp1+0x22/0x80 [ 1350.066516][ T27] ? tomoyo_path_number_perm+0x24e/0x590 [ 1350.072288][ T27] ? tomoyo_execute_permission+0x4a0/0x4a0 [ 1350.078142][ T27] ? __sanitizer_cov_trace_switch+0x63/0xf0 [ 1350.084153][ T27] ? __sanitizer_cov_trace_const_cmp2+0x22/0x80 [ 1350.090418][ T27] ? do_vfs_ioctl+0x132/0x15d0 [ 1350.095271][ T27] ? __sanitizer_cov_trace_switch+0x63/0xf0 [ 1350.103277][ T27] ? blkdev_common_ioctl+0x123/0x1910 [ 1350.108681][ T27] ? blk_ioctl_discard+0x330/0x330 [ 1350.113941][ T27] ? lock_downgrade+0x6e0/0x6e0 [ 1350.119004][ T27] ? loop_set_status_old+0x1b0/0x1b0 [ 1350.124525][ T27] blkdev_ioctl+0x37a/0x800 [ 1350.129160][ T27] ? blkdev_common_ioctl+0x1910/0x1910 [ 1350.134777][ T27] ? __sanitizer_cov_trace_const_cmp4+0x1c/0x70 [ 1350.141355][ T27] ? blkdev_common_ioctl+0x1910/0x1910 [ 1350.146938][ T27] __x64_sys_ioctl+0x193/0x200 [ 1350.151890][ T27] do_syscall_64+0x35/0xb0 [ 1350.156358][ T27] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 1350.162545][ T27] RIP: 0033:0x7f5ed093fae9 [ 1350.166981][ T27] RSP: 002b:00007f5ecde94188 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 [ 1350.175462][ T27] RAX: ffffffffffffffda RBX: 00007f5ed0a53020 RCX: 00007f5ed093fae9 [ 1350.183513][ T27] RDX: 0000000020000780 RSI: 0000000000004c02 RDI: 0000000000000006 [ 1350.191586][ T27] RBP: 00007f5ed0999f6d R08: 0000000000000000 R09: 0000000000000000 [ 1350.199874][ T27] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 1350.207949][ T27] R13: 00007ffc30db33ef R14: 00007f5ecde94300 R15: 0000000000022000 [ 1350.217615][ T27] [ 1350.220750][ T27] [ 1350.220750][ T27] Showing all locks held in the system: [ 1350.228555][ T27] 1 lock held by khungtaskd/27: [ 1350.233474][ T27] #0: ffffffff8bb83b60 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x53/0x260 [ 1350.243561][ T27] 2 locks held by systemd-udevd/2966: [ 1350.248942][ T27] #0: ffff88801a9e5918 (&disk->open_mutex){+.+.}-{3:3}, at: blkdev_get_by_dev.part.0+0x9b/0xb50 [ 1350.259518][ T27] #1: ffff88801a9e1360 (&lo->lo_mutex){+.+.}-{3:3}, at: lo_open+0x75/0x120 [ 1350.268391][ T27] 1 lock held by in:imklog/6215: [ 1350.273514][ T27] 1 lock held by syz-executor.3/10913: [ 1350.279276][ T27] #0: ffff88801109a108 (mapping.invalidate_lock#2){.+.+}-{3:3}, at: page_cache_ra_unbounded+0x1b3/0x940 [ 1350.290693][ T27] 1 lock held by syz-executor.3/10921: [ 1350.296184][ T27] #0: ffff88801a9e1360 (&lo->lo_mutex){+.+.}-{3:3}, at: loop_set_status+0x2a/0x930 [ 1350.306160][ T27] [ 1350.308522][ T27] ============================================= [ 1350.308522][ T27] [ 1350.317067][ T27] NMI backtrace for cpu 1 [ 1350.321412][ T27] CPU: 1 PID: 27 Comm: khungtaskd Not tainted 5.16.0-rc1-syzkaller #0 [ 1350.329590][ T27] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 1350.339730][ T27] Call Trace: [ 1350.343011][ T27] [ 1350.345942][ T27] dump_stack_lvl+0xcd/0x134 [ 1350.350526][ T27] nmi_cpu_backtrace.cold+0x47/0x144 [ 1350.355812][ T27] ? lapic_can_unplug_cpu+0x80/0x80 [ 1350.361021][ T27] nmi_trigger_cpumask_backtrace+0x1b3/0x230 [ 1350.367006][ T27] watchdog+0xc1d/0xf50 [ 1350.371271][ T27] ? reset_hung_task_detector+0x30/0x30 [ 1350.376849][ T27] kthread+0x405/0x4f0 [ 1350.381008][ T27] ? set_kthread_struct+0x130/0x130 [ 1350.386240][ T27] ret_from_fork+0x1f/0x30 [ 1350.390668][ T27] [ 1350.394052][ T27] Sending NMI from CPU 1 to CPUs 0: [ 1350.399292][ C0] NMI backtrace for cpu 0 [ 1350.399309][ C0] CPU: 0 PID: 9232 Comm: kworker/u4:8 Not tainted 5.16.0-rc1-syzkaller #0 [ 1350.399330][ C0] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 1350.399342][ C0] Workqueue: events_unbound toggle_allocation_gate [ 1350.399366][ C0] RIP: 0010:__sanitizer_cov_trace_pc+0xd/0x60 [ 1350.399389][ C0] Code: 00 00 e9 66 13 63 02 66 0f 1f 44 00 00 48 8b be b0 01 00 00 e8 b4 ff ff ff 31 c0 c3 90 65 8b 05 e9 d7 8a 7e 89 c1 48 8b 34 24 <81> e1 00 01 00 00 65 48 8b 14 25 40 70 02 00 a9 00 01 ff 00 74 0e [ 1350.399404][ C0] RSP: 0018:ffffc9000b0cf9c0 EFLAGS: 00000202 [ 1350.399416][ C0] RAX: 0000000080000000 RBX: 00002aaaaaaab000 RCX: 0000000080000000 [ 1350.399426][ C0] RDX: 0000000000000000 RSI: ffffffff81ad18b4 RDI: 0000000000000003 [ 1350.399436][ C0] RBP: 00000001406f8067 R08: 0000000000000000 R09: ffffea000006f7c7 [ 1350.399446][ C0] R10: ffffffff81ad18a6 R11: 000000000000003f R12: ffff888140740000 [ 1350.399456][ C0] R13: ffffc9000b0cfa60 R14: ffff8880118d12a8 R15: 00000001406f8007 [ 1350.399469][ C0] FS: 0000000000000000(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000 [ 1350.399489][ C0] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1350.399499][ C0] CR2: 00007fec10b24000 CR3: 000000000b88e000 CR4: 0000000000350ef0 [ 1350.399509][ C0] DR0: 0080ffff00000000 DR1: 0080ffff00000000 DR2: 0080ffff00000000 [ 1350.399518][ C0] DR3: 0080ffff00000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600 [ 1350.399528][ C0] Call Trace: [ 1350.399534][ C0] [ 1350.399539][ C0] __get_locked_pte+0x94/0x4d0 [ 1350.399558][ C0] ? kmem_cache_alloc_node_trace+0xa7/0x310 [ 1350.399576][ C0] __text_poke+0x1ae/0x8c0 [ 1350.399597][ C0] ? text_poke_loc_init+0x340/0x340 [ 1350.399614][ C0] ? kmem_cache_alloc_node_trace+0xa7/0x310 [ 1350.399633][ C0] text_poke_bp_batch+0x3d7/0x560 [ 1350.399650][ C0] ? mutex_lock_io_nested+0x1150/0x1150 [ 1350.399666][ C0] ? alternatives_enable_smp+0xf0/0xf0 [ 1350.399684][ C0] ? __jump_label_patch+0x159/0x1b0 [ 1350.399701][ C0] ? __sanitizer_cov_trace_const_cmp1+0x22/0x80 [ 1350.399719][ C0] ? __jump_label_update+0x351/0x400 [ 1350.399739][ C0] text_poke_finish+0x16/0x30 [ 1350.399755][ C0] arch_jump_label_transform_apply+0x13/0x20 [ 1350.399772][ C0] jump_label_update+0x1d5/0x430 [ 1350.399791][ C0] static_key_enable_cpuslocked+0x1b1/0x260 [ 1350.399810][ C0] static_key_enable+0x16/0x20 [ 1350.399827][ C0] toggle_allocation_gate+0x100/0x390 [ 1350.399841][ C0] ? lock_release+0x720/0x720 [ 1350.399857][ C0] ? wake_up_kfence_timer+0x20/0x20 [ 1350.399872][ C0] ? lockdep_hardirqs_on+0x79/0x100 [ 1350.399891][ C0] process_one_work+0x9b2/0x1690 [ 1350.399909][ C0] ? pwq_dec_nr_in_flight+0x2a0/0x2a0 [ 1350.399925][ C0] ? rwlock_bug.part.0+0x90/0x90 [ 1350.399941][ C0] ? _raw_spin_lock_irq+0x41/0x50 [ 1350.399959][ C0] worker_thread+0x658/0x11f0 [ 1350.399977][ C0] ? process_one_work+0x1690/0x1690 [ 1350.399992][ C0] kthread+0x405/0x4f0 [ 1350.400008][ C0] ? set_kthread_struct+0x130/0x130 [ 1350.400026][ C0] ret_from_fork+0x1f/0x30 [ 1350.400048][ C0] [ 1350.430259][ T27] Kernel panic - not syncing: hung_task: blocked tasks [ 1350.708288][ T27] CPU: 0 PID: 27 Comm: khungtaskd Not tainted 5.16.0-rc1-syzkaller #0 [ 1350.716439][ T27] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 1350.726912][ T27] Call Trace: [ 1350.730371][ T27] [ 1350.734008][ T27] dump_stack_lvl+0xcd/0x134 [ 1350.738749][ T27] panic+0x2b0/0x6dd [ 1350.742723][ T27] ? __warn_printk+0xf3/0xf3 [ 1350.747298][ T27] ? lapic_can_unplug_cpu+0x80/0x80 [ 1350.752496][ T27] ? preempt_schedule_thunk+0x16/0x18 [ 1350.757870][ T27] ? nmi_trigger_cpumask_backtrace+0x196/0x230 [ 1350.764008][ T27] ? watchdog.cold+0x130/0x158 [ 1350.769386][ T27] watchdog.cold+0x141/0x158 [ 1350.774396][ T27] ? reset_hung_task_detector+0x30/0x30 [ 1350.779935][ T27] kthread+0x405/0x4f0 [ 1350.784008][ T27] ? set_kthread_struct+0x130/0x130 [ 1350.789198][ T27] ret_from_fork+0x1f/0x30 [ 1350.793607][ T27] [ 1350.797443][ T27] Kernel Offset: disabled [ 1350.801772][ T27] Rebooting in 86400 seconds..