f5a4f5a5f5a6f5a7f5a8f5a9f5aaf5abf5acf5adf5aef5aff5b0f5b1f5b2f5b3f5b4f5b5f5b6f5b7f5b8f5b9f5baf5bbf5bcf5bdf5bef5bff5c0f5c1f5c2f5c3f5c4f5c5f5c6f5c7f5c8f5c9f5caf5cbf5ccf5cdf5cef5cff5d0f5d1f5d2f5d3f5d4f5d5f5d6f5d7f5d8f5d9f5daf5dbf5dcf5ddf5def5dff5e0f5e1f5e2f5e3f5e4f5e5f5e6f5e7f5e8f5e9f5eaf5ebf5ecf5edf5eef5eff5f0f5f1f5f2f5f3f5f4f5f5f5f6f5f7f5f8f5f9f5faf5fbf5fcf5fdf5fef5fff500f601f602f603f604f605f606f607f608f609f60af60bf60cf60df60ef60ff610f611f612f613f614f615f616f617f618f619f61af61bf61cf61df61ef61ff620f621f622f623f624f625f626f627f628f629f62af62bf62cf62df62ef62ff630f631f632f633f634f635f636f637f638f639f63af63bf63cf63df63ef63ff640f641f642f643f644f645f646f647f648f649f64af64bf64cf64df64ef64ff650f651f652f653f654f655f656f657f658f659f65af65bf65cf65df65ef65ff660f661f662f663f664f665f666f667f668f669f66af66bf66cf66df66ef66ff670f671f672f673f674f675f676f677f678f679f67af67bf67cf67df67ef67ff680f681f682f683f684f685f686f687f688f689f68af68bf68cf68df68ef68ff690f691f692f693f694f695f696f697f698f699f69af69bf69cf69df69ef69ff6a0f6a1f6a2f6a3f6a4f6a5f6a6f6a7f6a8f6a9f6aaf6abf6acf6adf6aef6aff6b0f6b1f6b2f6b3f6b4f6b5f6b6f6b7f6b8f6b9f6baf6bbf6bcf6bdf6bef6bff6c0f6c1f6c2f6c3f6c4f6c5f6c6f6c7f6c8f6c9f6caf6cbf6ccf6cdf6cef6cff6d0f6d1f6d2f6d3f6d4f6d5f6d6f6d7f6d8f6d9f6daf6dbf6dcf6ddf6def6dff6e0f6e1f6e2f6e3f6e4f6e5f6e6f6e7f6e8f6e9f6eaf6ebf6ecf6edf6eef6eff6f0f6f1f6f2f6f3f6f4f6f5f6f6f6f7f6f8f6f9f6faf6fbf6fcf6fdf6fef6fff600f701f702f703f704f705f706f707f708f709f70af70bf70cf70df70ef70ff710f711f712f713f714f715f716f717f718f719f71af71bf71cf71df71ef71ff720f721f722f723f724f725f726f727f728f729f72af72bf72cf72df72ef72ff730f731f732f733f734f735f736f737f738f739f73af73bf73cf73df73ef73ff740f741f742f743f744f745f746f747f748f749f74af74bf74cf74df74ef74ff750f751f752f753f754f755f756f757f758f759f75af75bf75cf75df75ef75ff760f761f762f763f764f765f766f767f768f769f76af76bf76cf76df76ef76ff770f771f772f773f774f775f776f777f778f779f77af77bf77cf77df77ef77ff780f781f782f783f784f785f786f787f788f789f78af78bf78cf78df78ef78ff790f791f792f793f794f795f796f797f798f799f79af79bf79cf79df79ef79ff7a0f7a1f7a2f7a3f7a4f7a5f7a6f7a7f7a8f7a9f7aaf7abf7acf7adf7aef7aff7b0f7b1f7b2f7b3f7b4f7b5f7b6f7b7f7b8f7b9f7baf7bbf7bcf7bdf7bef7bff7c0f7c1f7c2f7c3f7c4f7c5f7c6f7c7f7c8f7c9f7caf7cbf7ccf7cdf7cef7cff7d0f7d1f7d2f7d3f7d4f7d5f7d6f7d7f7d8f7d9f7daf7dbf7dcf7ddf7def7dff7e0f7e1f7e2f7e3f7e4f7e5f7e6f7e7f7e8f7e9f7eaf7ebf7ecf7edf7eef7eff7f0f7f1f7f2f7f3f7f4f7f5f7f6f7f7f7f8f7f9f7faf7fbf7fcf7fdf7fef7fff700f801f802f803f804f805f806f807f808f809f80af80bf80cf80df80ef80ff810f811f812f813f814f815f816f817f818f819f81af81bf81cf81df81ef81ff820f821f822f823f824f825f826f827f828f829f82af82bf82cf82df82ef82ff830f831f832f833f834f835f836f837f838f839f83af83bf83cf83df83ef83ff840f841f842f843f844f845f846f847f848f849f84af84bf84cf84df84ef84ff850f851f852f853f854f855f856f857f858f859f85af85bf85cf85df85ef85ff860f861f862f863f864f865f866f867f868f869f86af86bf86cf86df86ef86ff870f871f872f873f874f875f876f877f878f879f87af87bf87cf87df87ef87ff880f881f882f883f884f885f886f887f888f889f88af88bf88cf88df88ef88ff890f891f892f893f894f895f896f897f898f899f89af89bf89cf89df89ef89ff8a0f8a1f8a2f8a3f8a4f8a5f8a6f8a7f8a8f8a9f8aaf8abf8acf8adf8aef8aff8b0f8b1f8b2f8b3f8b4f8b5f8b6f8b7f8b8f8b9f8baf8bbf8bcf8bdf8bef8bff8c0f8c1f8c2f8c3f8c4f8c5f8c6f8c7f8c8f8c9f8caf8cbf8ccf8cdf8cef8cff8d0f8d1f8d2f8d3f8d4f8d5f8d6f8d7f8d8f8d9f8daf8dbf8dcf8ddf8def8dff8e0f8e1f8e2f8e3f8e4f8e5f8e6f8e7f8e8f8e9f8eaf8ebf8ecf8edf8eef8eff8f0f8f1f8f2f8f3f8f4f8f5f8f6f8f7f8f8f8f9f8faf8fbf8fcf8fdf8fef8fff800f901f902f903f904f905f906f907f908f909f90af90bf90cf90df90ef90ff910f911f912f913f914f915f916f917f918f919f91af91bf91cf91df91ef91ff920f921f922f923f924f925f926f927f928f929f92af92bf92cf92df92ef92ff930f931f932f933f934f935f936f937f938f939f93af93bf93cf93df93ef93ff940f941f942f943f944f945f946f947f948f949f94af94bf94cf94df94ef94ff950f951f952f953f954f955f956f957f958f959f95af95bf95cf95df95ef95ff960f961f962f963f964f965f966f967f968f969f96af96bf96cf96df96ef96ff970f971f972f973f974f975f976f977f978f979f97af97bf97cf97df97ef97ff980f981f982f983f984f985f986f987f988f989f98af98bf98cf98df98ef98ff990f991f992f993f994f995f996f997f998f999f99af99bf99cf99df99ef99ff9a0f9a1f9a2f9a3f9a4f9a5f9a6f9a7f9a8f9a9f9aaf9abf9acf9adf9aef9aff9b0f9b1f9b2f9b3f9b4f9b5f9b6f9b7f9b8f9b9f9baf9bbf9bcf9bdf9bef9bff9c0f9c1f9c2f9c3f9c4f9c5f9c6f9c7f9c8f9c9f9caf9cbf9ccf9cdf9cef9cff9d0f9d1f9d2f9d3f9d4f9d5f9d6f9d7f9d8f9d9f9daf9dbf9dcf9ddf9def9dff9e0f9e1f9e2f9e3f9e4f9e5f9e6f9e7f9e8f9e9f9eaf9ebf9ecf9edf9eef9eff9f0f9f1f9f2f9f3f9f4f9f5f9f6f9f7f9f8f9f9f9faf9fbf9fcf9fdf9fef9fff900fa01fa02fa03fa04fa05fa06fa07fa08fa09fa0afa0bfa0cfa0dfa0efa0ffa10fa11fa12fa13fa14fa15fa16fa17fa18fa19fa1afa1bfa1cfa1dfa1efa1ffa20fa21fa22fa23fa24fa25fa26fa27fa28fa29fa2afa2bfa2cfa2dfa2efa2ffa30fa31fa32fa33fa34fa35fa36fa37fa38fa39fa3afa3bfa3cfa3dfa3efa3ffa40fa41fa42fa43fa44fa45fa46fa47fa48fa49fa4afa4bfa4cfa4dfa4efa4ffa50fa51fa52fa53fa54fa55fa56fa57fa58fa59fa5afa5bfa5cfa5dfa5efa5ffa60fa61fa62fa63fa64fa65fa66fa67fa68fa69fa6afa6bfa6cfa6dfa6efa6ffa70fa71fa72fa73fa74fa75fa76fa77fa78fa79fa7afa7bfa7cfa7dfa7efa7ffa80fa81fa82fa83fa84fa85fa86fa87fa88fa89fa8afa8bfa8cfa8dfa8efa8ffa90fa91fa92fa93fa94fa95fa96fa97fa98fa99fa9afa9bfa9cfa9dfa9efa9ffaa0faa1faa2faa3faa4faa5faa6faa7faa8faa9faaafaabfaacfaadfaaefaaffab0fab1fab2fab3fab4fab5fab6fab7fab8fab9fabafabbfabcfabdfabefabffac0fac1fac2fac3fac4fac5fac6fac7fac8fac9facafacbfaccfacdfacefacffad0fad1fad2fad3fad4fad5fad6fad7fad8fad9fadafadbfadcfaddfadefadffae0fae1fae2fae3fae4fae5fae6fae7fae8fae9faeafaebfaecfaedfaeefaeffaf0faf1faf2faf3faf4faf5faf6faf7faf8faf9fafafafbfafcfafdfafefafffa00fb01fb02fb03fb04fb05fb06fb07fb08fb09fb0afb0bfb0cfb0dfb0efb0ffb10fb11fb12fb13fb14fb15fb16fb17fb18fb19fb1afb1bfb1cfb1dfb1efb1ffb20fb21fb22fb23fb24fb25fb26fb27fb28fb29fb2afb2bfb2cfb2dfb2efb2ffb30fb31fb32fb33fb34fb35fb36fb37fb38fb39fb3afb3bfb3cfb3dfb3efb3ffb40fb41fb42fb43fb44fb45fb46fb47fb48fb49fb4afb4bfb4cfb4dfb4efb4ffb50fb51fb52fb53fb54fb55fb56fb57fb58fb59fb5afb5bfb5cfb5dfb5efb5ffb60fb61fb62fb63fb64fb65fb66fb67fb68fb69fb6afb6bfb6cfb6dfb6efb6ffb70fb71fb72fb73fb74fb75fb76fb77fb78fb79fb7afb7bfb7cfb7dfb7efb7ffb80fb81fb82fb83fb84fb85fb86fb87fb88fb89fb8afb8bfb8cfb8dfb8efb8ffb90fb91fb92fb93fb94fb95fb96fb97fb98fb99fb9afb9bfb9cfb9dfb9efb9ffba0fba1fba2fba3fba4fba5fba6fba7fba8fba9fbaafbabfbacfbadfbaefbaffbb0fbb1fbb2fbb3fbb4fbb5fbb6fbb7fbb8fbb9fbbafbbbfbbcfbbdfbbefbbffbc0fbc1fbc2fbc3fbc4fbc5fbc6fbc7fbc8fbc9fbcafbcbfbccfbcdfbcefbcffbd0fbd1fbd2fbd3fbd4fbd5fbd6fbd7fbd8fbd9fbdafbdbfbdcfbddfbdefbdffbe0fbe1fbe2fbe3fbe4fbe5fbe6fbe7fbe8fbe9fbeafbebfbecfbedfbeefbeffbf0fbf1fbf2fbf3fbf4fbf5fbf6fbf7fbf8fbf9fbfafbfbfbfcfbfdfbfefbfffb00fc01fc02fc03fc04fc05fc06fc07fc08fc09fc0afc0bfc0cfc0dfc0efc0ffc10fc11fc12fc13fc14fc15fc16fc17fc18fc19fc1afc1bfc1cfc1dfc1efc1ffc20fc21fc22fc23fc24fc25fc26fc27fc28fc29fc2afc2bfc2cfc2dfc2efc2ffc30fc31fc32fc33fc34fc35fc36fc37fc38fc39fc3afc3bfc3cfc3dfc3efc3ffc40fc41fc42fc43fc44fc45fc46fc47fc48fc49fc4afc4bfc4cfc4dfc4efc4ffc50fc51fc52fc53fc54fc55fc56fc57fc58fc59fc5afc5bfc5cfc5dfc5efc5ffc60fc61fc62fc63fc64fc65fc66fc67fc68fc69fc6afc6bfc6cfc6dfc6efc6ffc70fc71fc72fc73fc74fc75fc76fc77fc78fc79fc7afc7bfc7cfc7dfc7efc7ffc80fc81fc82fc83fc84fc85fc86fc87fc88fc89fc8afc8bfc8cfc8dfc8efc8ffc90fc91fc92fc93fc94fc95fc96fc97fc98fc99fc9afc9bfc9cfc9dfc9efc9ffca0fca1fca2fca3fca4fca5fca6fca7fca8fca9fcaafcabfcacfcadfcaefcaffcb0fcb1fcb2fcb3fcb4fcb5fcb6fcb7fcb8fcb9fcbafcbbfcbcfcbdfcbefcbffcc0fcc1fcc2fcc3fcc4fcc5fcc6fcc7fcc8fcc9fccafccbfcccfccdfccefccffcd0fcd1fcd2fcd3fcd4fcd5fcd6fcd7fcd8fcd9fcdafcdbfcdcfcddfcdefcdffce0fce1fce2fce3fce4fce5fce6fce7fce8fce9fceafcebfcecfcedfceefceffcf0fcf1fcf2fcf3fcf4fcf5fcf6fcf7fcf8fcf9fcfafcfbfcfcfcfdfcfefcfffc00fd01fd02fd03fd04fd05fd06fd07fd08fd09fd0afd0bfd0cfd0dfd0efd0ffd10fd11fd12fd13fd14fd15fd16fd17fd18fd19fd1afd1bfd1cfd1dfd1efd1ffd20fd21fd22fd23fd24fd25fd26fd27fd28fd29fd2afd2bfd2cfd2dfd2efd2ffd30fd31fd32fd33fd34fd35fd36fd37fd38fd39fd3afd3bfd3cfd3dfd3efd3ffd40fd41fd42fd43fd44fd45fd46fd47fd48fd49fd4afd4bfd4cfd4dfd4efd4ffd50fd51fd52fd53fd54fd55fd56fd57fd58fd59fd5afd5bfd5cfd5dfd5efd5ffd60fd61fd62fd63fd64fd65fd66fd67fd68fd69fd6afd6bfd6cfd6dfd6efd6ffd70fd71fd72fd73fd74fd75fd76fd77fd78fd79fd7afd7bfd7cfd7dfd7efd7ffd80fd81fd82fd83fd84fd85fd86fd87fd88fd89fd8afd8bfd8cfd8dfd8efd8ffd90fd91fd92fd93fd94fd95fd96fd97fd98fd99fd9afd9bfd9cfd9dfd9efd9ffda0fda1fda2fda3fda4fda5fda6fda7fda8fda9fdaafdabfdacfdadfdaefdaffdb0fdb1fdb2fdb3fdb4fdb5fdb6fdb7fdb8fdb9fdbafdbbfdbcfdbdfdbefdbffdc0fdc1fdc2fdc3fdc4fdc5fdc6fdc7fdc8fdc9fdcafdcbfdccfdcdfdcefdcffdd0fdd1fdd2fdd3fdd4fdd5fdd6fdd7fdd8fdd9fddafddbfddcfdddfddefddffde0fde1fde2fde3fde4fde5fde6fde7fde8fde9fdeafdebfdecfdedfdeefdeffdf0fdf1fdf2fdf3fdf4fdf5fdf6fdf7fdf8fdf9fdfafdfbfdfcfdfdfdfefdfffd00fe01fe02fe03fe04fe05fe06fe07fe08fe09fe0afe0bfe0cfe0dfe0efe0ffe10fe11fe12fe13fe14fe15fe16fe17fe18fe19fe1afe1bfe1cfe1dfe1efe1ffe20fe21fe22fe23fe24fe25fe26fe27fe28fe29fe2afe2bfe2cfe2dfe2efe2ffe30fe31fe32fe33fe34fe35fe36fe37fe38fe39fe3afe3bfe3cfe3dfe3efe3ffe40fe41fe42fe43fe44fe45fe46fe47fe48fe49fe4afe4bfe4cfe4dfe4efe4ffe50fe51fe52fe53fe54fe55fe56fe57fe58fe59fe5afe5bfe5cfe5dfe5efe5ffe60fe61fe62fe63fe64fe65fe66fe67fe68fe69fe6afe6bfe6cfe6dfe6efe6ffe70fe71fe72fe73fe74fe75fe76fe77fe78fe79fe7afe7bfe7cfe7dfe7efe7ffe80fe81fe82fe83fe84fe85fe86fe87fe88fe89fe8afe8bfe8cfe8dfe8efe8ffe90fe91fe92fe93fe94fe95fe96fe97fe98fe99fe9afe9bfe9cfe9dfe9efe9ffea0fea1fea2fea3fea4fea5fea6fea7fea8fea9feaafeabfeacfeadfeaefeaffeb0feb1feb2feb3feb4feb5feb6feb7feb8feb9febafebbfebcfebdfebefebffec0fec1fec2fec3fec4fec5fec6fec7fec8fec9fecafecbfeccfecdfecefecffed0fed1fed2fed3fed4fed5fed6fed7fed8fed9fedafedbfedcfeddfedefedffee0fee1fee2fee3fee4fee5fee6fee7fee8fee9feeafeebfeecfeedfeeefeeffef0fef1fef2fef3fef4fef5fef6fef7fef8fef9fefafefbfefcfefdfefefefffe00ff01ff02ff03ff04ff05ff06ff07ff08ff09ff0aff0bff0cff0dff0eff0fff10ff11ff12ff13ff14ff15ff16ff17ff18ff19ff1aff1bff1cff1dff1eff1fff20ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff3bff3cff3dff3eff3fff40ff21ff22ff23ff24ff25ff26ff27ff28ff29ff2aff2bff2cff2dff2eff2fff30ff31ff32ff33ff34ff35ff36ff37ff38ff39ff3aff5bff5cff5dff5eff5fff60ff61ff62ff63ff64ff65ff66ff67ff68ff69ff6aff6bff6cff6dff6eff6fff70ff71ff72ff73ff74ff75ff76ff77ff78ff79ff7aff7bff7cff7dff7eff7fff80ff81ff82ff83ff84ff85ff86ff87ff88ff89ff8aff8bff8cff8dff8eff8fff90ff91ff92ff93ff94ff95ff96ff97ff98ff99ff9aff9bff9cff9dff9eff9fffa0ffa1ffa2ffa3ffa4ffa5ffa6ffa7ffa8ffa9ffaaffabffacffadffaeffafffb0ffb1ffb2ffb3ffb4ffb5ffb6ffb7ffb8ffb9ffbaffbbffbcffbdffbeffbfffc0ffc1ffc2ffc3ffc4ffc5ffc6ffc7ffc8ffc9ffcaffcbffccffcdffceffcfffd0ffd1ffd2ffd3ffd4ffd5ffd6ffd7ffd8ffd9ffdaffdbffdcffddffdeffdfffe0ffe1ffe2ffe3ffe4ffe5ffe6ffe7ffe8ffe9ffeaffebffecffedffeeffeffff0fff1fff2fff3fff4fff5fff6fff7fff8fff9fffafffbfffcfffdfffeffffff", 0x20000, 0x89000}, {&(0x7f000003c900)="46494c4530000300000000000000000001000100380001009801000000040000000000000000000004000000000000000800000000000000100000006000000000001800000000004800000018000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000300000006800000000001800000002004a00000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd6010070000000000000006c0000000000000600000000000000040324004d0046005400000000000000800000004800000001004000000001000000000000000000120000000000000040000000000000000030010000000000001801000000000000180100000000001113040000000000b00000004800000001004000000003000000000000000000000000000000000040000000000000000010000000000000100000000000000010000000000000001101020000000000ffffffff00"/416, 0x1a0, 0xff000}, {&(0x7f000003cb00)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\b\x00', 0x20, 0xff1e0}, {&(0x7f000003cc00)="000000000000000000000000000000000000000000000000000000000000080046494c453000030000000000000000000100010038000100580100000004000000000000000000000300000001000000020000000000000010000000600000000000180000000000480000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd601001000000000000000100000000000000600000000000000080324004d00460054004d00690072007200000000000000800000004800000001004000000001000000000000000000000000000000000040000000000000000010000000000000001000000000000000100000000000002101ff0000000000ffffffff00"/384, 0x180, 0xff3e0}, {&(0x7f000003ce00)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0xff5e0}, {&(0x7f000003cf00)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000200010038000100580100000004000000000000000000000300000002000000020000000000000010000000600000000000180000000000480000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000000000000001000000000000000000000000000000000000300000007000000000001800000002005200000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd601000004000000000000000400000000000600000000000000080324004c006f006700460069006c0065000000000000008000000048000000010040000000010000000000000000003f0000000000000040000000000000000000040000000000000004000000000000000400000000002140000100000000ffffffff00"/384, 0x180, 0xff7e0}, {&(0x7f000003d100)="0000000000000000000000000000000000000000000000000000000000000200", 0x20, 0xff9e0}, {&(0x7f000003d200)="000000000000000000000000000000000000000000000000000000000000020046494c453000030000000000000000000300010038000100e00100000004000000000000000000000600000003000000020000000000000010000000480000000000180000000000300000001800000080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd60106000000000000000000000000000000300000006800000000001800000001005000000018000100050000000000050080052e00c88dd60180052e00c88dd60180052e00c88dd60180052e00c88dd6010000000000000000000000000000000006000000000000000703240056006f006c0075006d00650050000000800000000000180000000200640000001800000001000480480000005400000000000000140000000200340002000000000014009f011200010100000000000512000000000018009f011200010200000000000520000000200200000101000000000005120000000102000000000005200000002002000000000000600000003000000000001800000004001200000018000000730079007a006b0061006c006c0065007200000000000000700000002800000000001800000005000c0000001800000000000000000000000301000000000000800000001800000000001800000003000000000018000000ffffffff000000000000000000000000000000000000000000000000000000000000000000000200", 0x220, 0xffbe0}, {&(0x7f000003d500)="0000000000000000000000000000000000000000000000000000000000000200ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff73797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c6c657273797a6b616c000000000000", 0x40440, 0xfffe0}, {&(0x7f000007da00)="eb52904e5446532020202000040400000000000000f8000000000000000000000000000080008000ff070000000000000400000000000000ff00000000000000f600000001000000a3b8b20fcf7aa836000000000e1fbe717cac22c0740b56b40ebb0700cd105eebf032e4cd16cd19ebfe54686973206973206e6f74206120626f6f7461626c65206469736b2e20506c6561736520696e73657274206120626f6f7461626c6520666c6f70707920616e640d0a707265737320616e79206b657920746f2074727920616761696e202e2e2e200d0a00"/224, 0xe0, 0x1ffc00}, {&(0x7f000007db00)="00000000000000000000000000000000000000000000000000000000000055aa", 0x20, 0x1ffde0}], 0x0, &(0x7f000007dc00)=ANY=[@ANYBLOB="af"]) mount$9p_fd(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f00000000c0), 0x20040c6, &(0x7f0000000140)={'trans=fd,', {}, 0x2c, {'wfdno', 0x3d, r0}, 0x2c, {[{@msize={'msize', 0x3d, 0xf7}}, {@loose}, {@fscache}, {@afid={'afid', 0x3d, 0x8}}, {@dfltgid={'dfltgid', 0x3d, 0xee01}}], [{@seclabel}]}}) 23:55:23 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x9, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:23 executing program 4: r0 = socket$packet(0x11, 0x3, 0x300) poll(&(0x7f00000000c0)=[{r0}], 0x1, 0x138) close(r0) r1 = socket$inet(0x2, 0x1, 0x0) r2 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r2, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) dup2(r0, r2) setsockopt$inet_tcp_int(r1, 0x6, 0x19, &(0x7f0000000000)=0x1, 0x4) 23:55:23 executing program 0: syz_usb_connect(0x0, 0x24, &(0x7f0000000140)=ANY=[@ANYBLOB="1201000034fa1d0809122323e9e2010203010902120001000002000904"], 0x0) syz_usb_control_io(0xffffffffffffffff, &(0x7f0000000200)={0x18, &(0x7f0000000000)={0x0, 0x21, 0x91, {0x91, 0x0, "795a1609cc7e7fb4384caca226dd475aaeae33dc81c2a8f2ecc6787127c911ebe71481751ec53c4c134296aa302cd144a5314a95fac5f03c91ea44e245e060b9652b4313886c599997c78bee006e2f5141d57ea516e47177c107e80933cc8fa6145726dd568ce6e1dbf4ac37828adec5263a69f33156b23d0c46a250cdb2488304cf0a03ea11b66296254ad1b94419"}}, &(0x7f00000000c0)={0x0, 0x3, 0x4, @lang_id={0x4, 0x3, 0x430}}, &(0x7f0000000100)={0x0, 0xf, 0x5, {0x5, 0xf, 0x5}}, &(0x7f0000000180)={0x20, 0x29, 0xf, {0xf, 0x29, 0x39, 0x1, 0x8, 0x0, 'st[a', "2c067b12"}}, &(0x7f00000001c0)={0x20, 0x2a, 0xc, {0xc, 0x2a, 0x1, 0x18, 0x0, 0x45, 0x7, 0x7ff, 0x5b1a}}}, &(0x7f0000000700)={0x44, &(0x7f0000000240)={0x20, 0x13, 0xef, "609e809e685082ab3fd679d6566fda84febe8f4dd6b4325b73c1a70dd69c677f880e5ea87c51d52da35a6691f9ecc7c376be7fd3972d55ad1c868b02ebeca687edb5e4d53a8ac38e2421f0f11846d854d7c1c71f8d17e30d0cc31b61909d0fdfc2d7db766b2a1e6bfd0c59ca46c697475d6bb02709974e8be548519b04b878ca7da7e9afed9fcfc81abcc8a2d661e5cdc92f94716426ca3645765c79dd9301406fcf769f66766f0f5be924dae5c6e0ec1b0a5459ab7505c7aa785ea0951719f11782bf76ab582b758ef150a2526c7f1fad25c29aae0657eaf010ef4ccccec51318eca3872a4e7a93e9666722583105"}, &(0x7f0000000340)={0x0, 0xa, 0x1, 0x9}, &(0x7f0000000380)={0x0, 0x8, 0x1, 0x9}, &(0x7f00000003c0)={0x20, 0x0, 0x4, {0x0, 0x2}}, &(0x7f0000000400)={0x20, 0x0, 0x8, {0x4, 0x10, [0xfff0]}}, &(0x7f0000000440)={0x40, 0x7, 0x2, 0x1}, &(0x7f0000000480)={0x40, 0x9, 0x1, 0xa8}, &(0x7f00000004c0)={0x40, 0xb, 0x2, "f382"}, &(0x7f0000000500)={0x40, 0xf, 0x2, 0x2}, &(0x7f0000000540)={0x40, 0x13, 0x6, @broadcast}, &(0x7f0000000580)={0x40, 0x17, 0x6, @multicast}, &(0x7f00000005c0)={0x40, 0x19, 0x2, "a904"}, &(0x7f0000000600)={0x40, 0x1a, 0x2, 0x7}, &(0x7f0000000640)={0x40, 0x1c, 0x1, 0x7f}, &(0x7f0000000680)={0x40, 0x1e, 0x1, 0x20}, &(0x7f00000006c0)={0x40, 0x21, 0x1, 0x5}}) [ 317.885170][T12003] loop2: detected capacity change from 0 to 33856 [ 317.916519][T12003] ntfs: (device loop2): parse_options(): Unrecognized mount option ¯. 23:55:24 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xf, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:24 executing program 2: syz_mount_image$ext4(&(0x7f0000000000)='ext4\x00', &(0x7f0000000100)='./file1\x00', 0x80000, 0x4, &(0x7f0000000200)=[{&(0x7f0000010000)="200000003600000019000000600100000ff68f01000000000000000004000000000002000020000020000000ddf4655fddf4655f0100ffff53ef010001000000ddf4655f000000000000000000040000000000000b0000000001000008000000d24200001203", 0x66, 0x400}, {&(0x7f0000010100)="0000000000000000000000026856d49a00cc4371bd6a7c893f280045010040", 0x1f, 0x4e0}, {&(0x7f0000010400)="030000000400000005", 0x9, 0x800}, {&(0x7f0000010e00)="ed41000000040000ddf4655fddf4655fddf4655f000000000000040020", 0x1d, 0x1500}], 0x81, &(0x7f0000000080)) openat$dir(0xffffff9c, &(0x7f0000000040)='./file1\x00', 0x40200, 0x110) 23:55:24 executing program 3: r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000001080)=ANY=[@ANYBLOB="00183e", @ANYRESHEX=r0, @ANYBLOB=',rootmode=00000000000000000040000,user_id=', @ANYRESDEC=0x0, @ANYBLOB="2c67726f75705f69643d34263fe6664c0c3ab653dbbf85d57eb7f22f10c9718d492d365950cdcc2dabda9949fc3e8443605da266b9408b5ef7871b10edfac0b902718f0e87cf6df94ceef7e0aee001663b6d5f43e145ed05795aca90c5cff95e2993685625709bda3c859f66fba127", @ANYRESDEC=0x0, @ANYBLOB=',\x00']) read$FUSE(r0, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r2 = fcntl$dupfd(r0, 0x0, r0) read$FUSE(0xffffffffffffffff, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(0xffffffffffffffff, &(0x7f0000004200)={0x50, 0x0, r3, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(0xffffffffffffffff, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r4 = fcntl$dupfd(0xffffffffffffffff, 0x0, 0xffffffffffffffff) syz_fuse_handle_req(r4, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) r5 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r5}, 0x2c, {'rootmode', 0x3d, 0x4000}}) read$FUSE(r5, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r5, &(0x7f0000004200)={0x50, 0x0, r6, {0x7, 0x1f}}, 0x50) write$FUSE_INIT(r4, &(0x7f0000001180)={0x50, 0x0, r6, {0x7, 0x21, 0x1f, 0x1000c0, 0x4, 0x0, 0x3ff, 0x2}}, 0x50) syz_fuse_handle_req(r2, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) getsockopt$inet_sctp_SCTP_RECVNXTINFO(r2, 0x84, 0x21, &(0x7f0000001000), &(0x7f0000001040)=0x4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:25 executing program 4: syz_mount_image$iso9660(&(0x7f00000000c0), &(0x7f0000000100)='./file0\x00', 0x0, 0x2, &(0x7f0000000200)=[{&(0x7f0000010a00)="0243443030310100004c0049004e0055005800200020002000200020002000200020002000200020004300440052004f004d0020002000200020002000200020002000200020002000000000000000005002000000000250252f4500000000000000000000000000000000000000000000000000000000000100000101000001000808001c0000000000001c1001000000000000000001120000000022001601", 0xa0, 0x8800}, {&(0x7f0000014600)="2200160100000000011600080000000008007809140b2a3a0802", 0x1a, 0x8b000}], 0x0, &(0x7f0000000040)={[{@iocharset={'iocharset', 0x3d, 'cp437'}}]}) r0 = openat(0xffffffffffffff9c, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) mount(&(0x7f0000000000)=@loop={'/dev/loop', 0x0}, &(0x7f0000000140)='./file0\x00', &(0x7f0000000180)='efivarfs\x00', 0x100000, &(0x7f00000001c0)='.\x00') r1 = syz_open_dev$tty1(0xc, 0x4, 0x1) r2 = syz_open_procfs(0x0, &(0x7f0000000080)='mountinfo\x00') sendfile(r1, r2, 0x0, 0x800000080004105) 23:55:25 executing program 0: r0 = syz_usb_connect$hid(0x3, 0x36, &(0x7f00000000c0)=ANY=[], 0x0) syz_usb_connect$hid(0x3, 0x3f, &(0x7f0000000000)={{0x12, 0x1, 0x110, 0x0, 0x0, 0x0, 0x10, 0x46d, 0x4101, 0x40, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x2d, 0x1, 0x1, 0x0, 0x20, 0x7f, [{{0x9, 0x4, 0x0, 0x40, 0x1, 0x3, 0x1, 0x7, 0x4, {0x9, 0x21, 0x3, 0x7, 0x1, {0x22, 0x9ed}}, {{{0x9, 0x5, 0x81, 0x3, 0x400, 0x4, 0x3, 0x4f}}, [{{0x9, 0x5, 0x2, 0x3, 0x200, 0x7, 0x6, 0x7e}}]}}}]}}]}}, &(0x7f00000001c0)={0xa, &(0x7f0000000040)={0xa, 0x6, 0x310, 0x81, 0x0, 0x6, 0x60, 0x81}, 0x23, &(0x7f0000000080)={0x5, 0xf, 0x23, 0x2, [@ss_container_id={0x14, 0x10, 0x4, 0x0, "4860913deae5b34e9f807ad0650027a4"}, @ss_cap={0xa, 0x10, 0x3, 0x0, 0x8, 0x47, 0xdb, 0xfffc}]}, 0x1, [{0x8, &(0x7f00000000c0)=@string={0x8, 0x3, "c5c3d075482a"}}]}) syz_usb_connect(0x0, 0x4fa, &(0x7f0000000200)={{0x12, 0x1, 0x201, 0xd5, 0x9, 0x32, 0x40, 0x499, 0x1022, 0x741, 0x1, 0x2, 0x3, 0x1, [{{0x9, 0x2, 0x4e8, 0x2, 0x1f, 0x1, 0x0, 0x0, [{{0x9, 0x4, 0x0, 0x0, 0x1, 0x46, 0x75, 0x1f, 0x8, [@cdc_ecm={{0xa, 0x24, 0x6, 0x0, 0x0, "7f2e9ff134"}, {0x5, 0x24, 0x0, 0x690}, {0xd, 0x24, 0xf, 0x1, 0x5, 0x9d54, 0x4}, [@country_functional={0xc, 0x24, 0x7, 0x3, 0xc9, [0x9, 0xc2c2, 0x7f]}, @network_terminal={0x7, 0x24, 0xa, 0xff, 0x0, 0x1, 0x9}, @acm={0x4, 0x24, 0x2, 0x9}]}, @cdc_ncm={{0xa, 0x24, 0x6, 0x0, 0x1, "03e81cbff1"}, {0x5, 0x24, 0x0, 0x43}, {0xd, 0x24, 0xf, 0x1, 0x1, 0x8000, 0x4, 0x3}, {0x6, 0x24, 0x1a, 0x4, 0x5}, [@dmm={0x7, 0x24, 0x14, 0x1f, 0xe}, @obex={0x5}, @obex={0x5, 0x24, 0x15, 0x1}]}], [{{0x9, 0x5, 0x5, 0x0, 0x400, 0x8, 0x4, 0x48}}]}}, {{0x9, 0x4, 0xd7, 0xa4, 0xb, 0x95, 0x9e, 0xfa, 0x8, [], [{{0x9, 0x5, 0xe, 0x0, 0x608, 0x6, 0x3, 0x5, [@uac_iso={0x7, 0x25, 0x1, 0x80, 0x4, 0x692}, @generic={0x63, 0x24, "6820e1ce9c71325389efe94f68c6464b9c603c018282558982ced4139f97478e585bfb5a279bf7ca9ce92610ba9aed38d64edde82b3d2aa7af7456bbb23072d0bbf060316515b4d786194866ea697afce11dd1f1c106dc07518445924395fa17af"}]}}, {{0x9, 0x5, 0x0, 0x1, 0x200, 0xfc, 0x2, 0x0, [@uac_iso={0x7, 0x25, 0x1, 0x3, 0x1, 0xfffc}, @uac_iso={0x7, 0x25, 0x1, 0x2, 0x2, 0x80}]}}, {{0x9, 0x5, 0xa, 0x8, 0x10, 0x9b, 0x7f, 0x6, [@generic={0x1d, 0x22, "8a2fb82347ca63d76984faa7471ca660cb1d2370922276b8b8ffa8"}]}}, {{0x9, 0x5, 0x0, 0x8, 0x40, 0x4, 0x2, 0x0, [@generic={0xf3, 0x22, "436792d1ca3ed565627344727c8eefb6cfde35f3cb46419ef78e08b06ec64772843a0b42757d4f3d8b67ad0d12c73dba5fab777b24df3ecad9374cdc9176307831d441284bcdd6ab8c51a7f9c22a383ca189757bd8b5d0927a9802135efba97164cc2e24a59951723288e76383232d4366de186350432f1b8d72557f5144d7be5b05da2cc70b70e5a66eb36a10da438303a66c4f6d936d8b4993fad31232df3013eb50d6814c067af47b789a2819988efcba30f54eb96f4858ef71bd75cf454e8ce1fe24c693bcd4f22d8578e2dab39ad58279935181ca080770ee5b37043e97a03b776cf3db455b458ff8f3e9ca042803"}, @generic={0x32, 0x7, "74cd1fae78ced988872df9ef60c562711821d90f1b1a47951a605fefbc781557a3c064e174986480c27615939f671bed"}]}}, {{0x9, 0x5, 0xe, 0x0, 0x310, 0x7, 0x0, 0x0, [@generic={0x77, 0xe, "d626fe92f000bd28297fcc35483dce710d743dbe1b7c3d2cf54c7c8059c33de7ac3b0375498e16f63a5d2c2025bd2c88fcd1fa43bd80e5c43d402e994a939a173f6556c7da47c39f7cc931dd63b255d9c88d1783b7043637749cb69c82cf42c9a23b8241b07cb5c0edd6ba77cb82f8dc14941af421"}, @generic={0x33, 0xf, "4d9636169b0a648995e29063706fd221e2b90c49407fdc304cf97d59f9b9941cb5ce5ecd87e29376c2919f3310f5082dd9"}]}}, {{0x9, 0x5, 0x80, 0x10, 0x10, 0x3, 0x5, 0x1}}, {{0x9, 0x5, 0x0, 0x11, 0x20, 0x7, 0xff, 0x4, [@generic={0xa5, 0x11, "726cbf60cc4da17c4488bc1f38e2c05cbd31b5f9bef92fb424add59d6e70172b0c009ea7ce0ac0b0ebdc84d5b2f81dc7f3b851d58b4759910f1979236b7ca71dcf3f410834d8ad7664254b260937e447f6609cf310c114e395ad763b0fc82ca675e845161ba410ec99b95debbb5ae9961d9a88b7ccd22af525c21be713409cb556e188f847a01d393563eceed89df8c8247ca1441ec714e2476a49497a3a7775e6b812"}, @uac_iso={0x7, 0x25, 0x1, 0x82, 0x4, 0x4}]}}, {{0x9, 0x5, 0x7, 0x10, 0x20, 0x8, 0xe3, 0x6}}, {{0x9, 0x5, 0xc, 0x1, 0x400, 0x9, 0x0, 0x86, [@generic={0xdb, 0x6, "d5d3fee873230b32f893096820c24d96247ea0236ee6788b078620c0bb0919919c2b7d83195658c13df32c0f529897d01230db55461dad277c0d3efa5b89aa017db173c3e9cd721983643c71a3bfa4b2d713433d475b4112f23629463dd8c2b6f66e761788c02331a8ddf72a36dd114a6cd474ce00c8e9cf9f67114b64e2de5ea72d9baad6d727c313e60438259567dcd1fd1f5c5cceb3ac913fb5196c5d49c23134e732961ddd8c62bccfde685baef987cfa01054823b156282448cda9c1b7622e14be590130f22f18b82b0ebd12ed5cac755de7dacd518ae"}, @generic={0x9, 0x3b, "e543f84a897a22"}]}}, {{0x9, 0x5, 0x7, 0x10, 0x40, 0x0, 0x1, 0x9}}, {{0x9, 0x5, 0x0, 0x0, 0x40, 0x1f, 0x9a, 0x6, [@uac_iso={0x7, 0x25, 0x1, 0x0, 0x40, 0x5}]}}]}}]}}]}}, &(0x7f0000000b80)={0xa, &(0x7f0000000700)={0xa, 0x6, 0x110, 0x6, 0x1f, 0x7, 0x40, 0x7f}, 0xd6, &(0x7f0000000740)={0x5, 0xf, 0xd6, 0x5, [@ssp_cap={0x24, 0x10, 0xa, 0x3, 0x6, 0x8, 0xf, 0x4, [0x30, 0xff00c0, 0xff3f30, 0x3f00, 0xc0, 0xc0]}, @generic={0x93, 0x10, 0xa, "967b3302b7a1a6d3c05bd2825723629fe0479b0a726dadc35931c0708d97078fcd5f19b1a38a886f47a3a07f3a775a2397540d1dde35e8a012cbbdd3ef41bc2ae6b2b7f76c0f2cd6530def58afbc6fd33f5ed3653bd3b05d35317d1ca3f29492ffed168df83ffcbf1c3feeb8b8c142f1b0c35f4950dbd36a222e0cccabdd302ee8430b733611ff5ab661476d9688d245"}, @wireless={0xb, 0x10, 0x1, 0xc, 0x40, 0xdf, 0x1, 0x3f, 0x56}, @ssp_cap={0xc, 0x10, 0xa, 0x6, 0x0, 0x3, 0xff00}, @ptm_cap={0x3}]}, 0x5, [{0xf9, &(0x7f0000000840)=@string={0xf9, 0x3, "3a0ebc1c2180046e04965d31e490df3126ca988b6bc501ca7b25dd026eb9737df6ea4390afe17eea42bdc8ee0f0e36642fdf94f756bf3f1ea494b48b0b9535fe24286d2f3d8c2cb4e0baf75c3717e4509b2e1426ce154ae3bf17a21bc340b4aa63300f6ab8988be4fa939db7979aa89287d0a5f82f6a6ea00126cc76febea625559fcfe064ce3b5e55cbdbb8857c36cad88e66f09cd9c3412532b0024abd1351b2c91d86ecb31ccd9279eb0893c28d1ff8b5d93f9a11efafdedb83b89a687f8d3c9074a28e987933a86b5c303fd5c9d81f839697222668f838a960144cc8d2571618dc2625443d0d7bc04790e2763f0b9fb9ad3fdaef55"}}, {0x93, &(0x7f0000000940)=@string={0x93, 0x3, "06a8cc3bc5f35fe22c8dc86c82d30ccf85db48ab5d8ef55fb811daef71c3b66673c9760b061138dec187d1169837085ae202811048d6fe2c02fb73358fc313bc57ab11b00222cd2d6be38522e114a10dc92aac13126351c2fccf7f78a53d2aba3ca055df49bf888ec3b6b2111a93eab0b86a0fdbdb0ddbb8c20d726cdceb834f912d16db953f714cccf0c64022594a2f16"}}, {0xbd, &(0x7f0000000a00)=@string={0xbd, 0x3, "0d7da3bd00fccee263e24853dc507c7b18ee5fe37d64c05faa0a25e211216f90ff0627fe7ed9a182bba7327974441664c50615ed1fdf088d97f28bd9c652f378632500c3caf7504b5ef0c23ec3df6617c393563e6557b0f06ba205fc8b32a066f3b090487349d9269d77bfcbb94b7ed5caad9a90509c5a14c96ee4e59ddf529b2753f5ea0ccab83b49fc69468a795118d60810a89bcbaa85b2b1c5fdcc09605709e51f532d882be3a35f9aac64bcc8961a4f881707a99f0c57acee"}}, {0x4, &(0x7f0000000ac0)=@lang_id={0x4, 0x3, 0x3c61}}, {0x4, &(0x7f0000000b40)=@lang_id={0x4, 0x3, 0x5819}}]}) syz_usb_control_io(r0, 0x0, 0x0) syz_usb_control_io(r0, &(0x7f0000000b00)={0x18, &(0x7f0000000100)={0x0, 0x0, 0xa0, {0xa0, 0x0, "3aed11f0d23e084ec55fb88a99f7daa0f8baea8369bd11baebc16fd5b0434783e19404c7d6d577f0e9e7b1481bd2748f3fb3815d69dcd4b7ffa4ffb617b9d884488b78a07b782073f4f0f4ee53c01fc0057c044ad9de5d48b5d65f3b6e365101f72b3e698ede7aced697fc5a6ff754882a7386978dd2fb1a6a326432457c8c8206da81094ee9ce10d1bf042ab094cd6091d54a69a57640c7034769d70162"}}, 0x0, 0x0, 0x0, 0x0}, 0x0) [ 319.021343][T12022] loop2: detected capacity change from 0 to 1024 23:55:25 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x60, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) [ 319.112884][T12029] loop4: detected capacity change from 0 to 2224 23:55:25 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/102400, 0x19000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a040)=""/216, 0xd8) 23:55:25 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xb7, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) [ 319.818060][T12022] EXT4-fs (loop2): ext4_check_descriptors: Checksum for group 0 failed (60935!=0) 23:55:26 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4102, 0x1006) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/183, 0xb7) [ 319.818734][T12022] EXT4-fs: failed to create workqueue [ 319.818768][T12022] EXT4-fs (loop2): mount failed 23:55:26 executing program 2: r0 = socket$inet6_sctp(0xa, 0x5, 0x84) getsockopt$inet_sctp6_SCTP_GET_ASSOC_ID_LIST(r0, 0x84, 0x1d, &(0x7f0000000000)={0x1, [0x0]}, &(0x7f0000000040)=0x8) setsockopt$inet_sctp6_SCTP_SOCKOPT_BINDX_ADD(r0, 0x84, 0x17, &(0x7f0000000940)=[@in6={0x2, 0x0, 0x0, @ipv4={'\x00', '\xff\xff', @multicast1}, 0xfffffffc}], 0x1c) 23:55:26 executing program 0: r0 = syz_open_dev$vim2m(&(0x7f0000000080), 0x1, 0x2) poll(&(0x7f0000000380)=[{r0, 0x8485}], 0x1, 0x0) ioctl$vim2m_VIDIOC_REQBUFS(r0, 0xc0145608, &(0x7f0000000000)={0x0, 0x1, 0x4}) mmap(&(0x7f0000ffa000/0x4000)=nil, 0x4000, 0x2, 0x11, r0, 0x70483000) 23:55:26 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x300, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:26 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/5, 0x5) 23:55:26 executing program 2: r0 = open(&(0x7f0000000040)='./mnt/file0\x00', 0x80, 0x58) perf_event_open(&(0x7f000001d000)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6}, 0x0, 0x7, 0xffffffffffffffff, 0x0) r1 = syz_open_dev$rtc(&(0x7f0000000180), 0x0, 0x880) ioctl$BTRFS_IOC_QUOTA_CTL(r1, 0xc0109428, &(0x7f00000001c0)) setsockopt$inet6_IPV6_FLOWLABEL_MGR(0xffffffffffffffff, 0x29, 0x20, &(0x7f0000000000)={@mcast1, 0x0, 0x0, 0x2, 0x1, 0x1f, 0x0, 0x400000000}, 0x20) syz_mount_image$f2fs(&(0x7f0000000000), &(0x7f0000000100)='./mnt\x00', 0x0, 0xd, &(0x7f0000000200)=[{&(0x7f0000010000)="1020f5f201000e0209000000030000000c000000090000000100000001000000000000000040000000000000180000001f0000000200000002000000020000000100000018000000000200000002000000060000000a0000000e000000100000030000000100000002", 0x69, 0x400}, {&(0x7f00000106c0)="0bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f", 0xa6, 0x200000}, {&(0x7f0000010780)="00000000000000000000000000000000000000000000000000000000d9fa28d501000300000000030000000010", 0x2d, 0x200fe0}, {&(0x7f0000000600)="000000000000000000000000000000000000000000000000000000060000000000010c80", 0x24, 0x2011e0}, {&(0x7f0000010800)="000000000000000000000001", 0xc, 0x201240}, {&(0x7f0000010820)="0000000000000000000000000000000000000000000000000002", 0x1a, 0x201280}, {&(0x7f0000010840)="0000000000000003", 0x8, 0x2012e0}, {&(0x7f0000010860)='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\v', 0x16, 0x201320}, {&(0x7f0000010880)="00000005", 0x4, 0x201380}, {&(0x7f0000010920)="00000000000000000000000000000000000000000000000000000001000000000bd03b7500000000001000000000000002000000000000000d0000001000000012000000000000000100000002000000ffffffffffffffffffffffffffffffffffffffff01000000000000000000000000000000030000000b00000005000000ffffffffffffffffffffffffffffffffffffffff010000000000000000000000000000008501000006000000010000000100000001000000040000004000000040000000fc0f", 0xc6, 0x204fe0}, {&(0x7f0000010a00)="00000000000000000000000000000000000000000000000000000000d9fa28d5", 0x20, 0x205fe0}, {&(0x7f0000000480)="ed410000e8030000e803000002000000001000000000000002", 0x19, 0x1000000}, {&(0x7f0000010d20)="00000000000000000300000003", 0xd, 0x1000fe0}], 0x0, &(0x7f0000010da0)) setsockopt$inet6_IPV6_FLOWLABEL_MGR(r0, 0x29, 0x20, &(0x7f0000000080)={@private2={0xfc, 0x2, '\x00', 0x1}, 0x0, 0x2, 0x0, 0x0, 0x0, 0x6673}, 0x20) 23:55:27 executing program 0: r0 = socket$inet6(0xa, 0xa, 0x0) close(r0) socket$inet6(0xa, 0x5, 0x2) setsockopt$IP6T_SO_SET_REPLACE(r0, 0x29, 0x40, &(0x7f0000000640)=@mangle={'mangle\x00', 0x64, 0x6, 0x518, 0x0, 0x258, 0x0, 0x340, 0x340, 0x450, 0x450, 0x450, 0x450, 0x450, 0x6, 0x0, {[{{@uncond, 0x0, 0xa4, 0xc8}, @HL={0x24}}, {{@ipv6={@dev, @local, [], [], 'veth1\x00', 'ip6tnl0\x00'}, 0x0, 0xa4, 0xc8}, @HL={0x24, 'HL\x00', 0x0, {0x3}}}, {{@uncond, 0x0, 0xa4, 0xc8}, @unspec=@CHECKSUM={0x24}}, {{@ipv6={@rand_addr=' \x01\x00', @ipv4, [], [], 'veth1_to_batadv\x00', 'veth1_to_batadv\x00'}, 0x0, 0xa4, 0xe8}, @SNPT={0x44, 'SNPT\x00', 0x0, {@ipv4=@empty, @ipv4=@loopback}}}, {{@ipv6={@private0, @private1, [], [], 'veth1_to_batadv\x00', 'ip6erspan0\x00'}, 0x0, 0xec, 0x110, 0x0, {}, [@common=@hl={{0x24}}, @inet=@rpfilter={{0x24}}]}, @unspec=@CHECKSUM={0x24}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x574) [ 321.455867][T12070] loop2: detected capacity change from 0 to 65551 [ 321.510883][T12070] F2FS-fs (loop2): Magic Mismatch, valid(0xf2f52010) - read(0x0) [ 321.510987][T12070] F2FS-fs (loop2): Can't find valid F2FS filesystem in 2th superblock [ 321.515154][T12070] F2FS-fs (loop2): invalid crc_offset: 0 [ 321.570732][T12070] F2FS-fs (loop2): f2fs_check_nid_range: out-of-range nid=1, run fsck to fix. [ 321.570836][T12070] F2FS-fs (loop2): f2fs_check_nid_range: out-of-range nid=2, run fsck to fix. [ 321.838440][T12070] F2FS-fs (loop2): Try to recover 2th superblock, ret: 0 [ 321.838545][T12070] F2FS-fs (loop2): Mounted with checkpoint version = 753bd00b 23:55:29 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x500, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:29 executing program 3: r0 = openat$dlm_monitor(0xffffff9c, &(0x7f0000001000), 0x101200, 0x0) r1 = socket(0x2a, 0x3, 0x7) sendfile(r1, r0, &(0x7f00000020c0)=0x3, 0x7fff) ioctl$DRM_IOCTL_MODE_GETPROPBLOB(r0, 0xc01064ac, &(0x7f0000002080)={0x0, 0x1000, &(0x7f0000001080)=""/4096}) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/22, 0x16) 23:55:29 executing program 5: ioctl$sock_inet_SIOCGIFADDR(0xffffffffffffffff, 0x8915, &(0x7f0000000000)={'ip6gretap0\x00', {0x2, 0x0, @empty}}) ioctl$BTRFS_IOC_ADD_DEV(0xffffffffffffffff, 0x5000940a, &(0x7f0000000040)={{}, "6946d6b5d557eff4eea20be16464ba62e74eb534125c7a0dcb215d81b30bcb5889977d31067d2e2849c81d3729c1491aba521e7126ddcaee2d599fdec8d51a5297b9d5cf6e87fe72bc1a619a07f72b8a921f600ff9a215387d326441dab7dac41639549d8dee9514761f22acfbd80e08ed16ff47f1a82597628f1b361127eaef929cbc375b798b6cf0d7ab36028cf7865df7ba046245f0ccc229401712cc317f0f9acebde8840b336b648f860a11aed0e8494a3d7fbf7e550864bc59a8d893ba4902a21984e897480d672b857601b9b630fcb8091ba8ef1bca725cce4daefaa248598096138f533b5484896e0e119d8f9bb4c33f9b9a730ee99d998db2006f269434a921e27c497fdd537a6f5b30bcbf0db338eaab4ad47caa19772243775f65b2f64b0f7aaef74e59b8fba5e97a25faa7688adbff31ce3ac41b6988e107c4729386bbd3e931a54c357a1c64b511c6248ea9c8d30fbe4d9d89b5819958222dc2bf72d739fec18a005c6f2ce0cd09fbcf0503bcf2e028bf128ee5e51ca9e6459e1a69a7fcda506c54801858ddf733f679928d996a3f448d9d5d036dfba8479cfad7d51511e2264167a07b029bc444a31ba44f36c4c587ca44253d112bda830535770bf065bf284d0a4bbf264282ecdf7b2203f2f7e4164a070a3245715550e166261bf59dfb2ce9b0759595aeecb1fc402209fc002319bfd4456d7d7f6254be7fcc1db9d7853dc93740cadca5820d139bdfe202bed26aa0da79ea5ea1d08863e4135f4b78cbe09af19903daaf5673e9e4ec2d049bc2bab97a53260dc766a0b05ca5facb5cee253fc152fed3999f93b0cac215f2bfd9add0659fad24b3231ee62f6a655e9e2bffb33c409497e6fd1384141174a6e99678cf5522baf1dfeb986184678234c36f0f5108dbab1c0fdef200fff038dacddaa43f9aae1ff620b211868d32685c07f23db649b7bf9e74f3d3d12e1938e50eb4f75fbf9a05bcdd529f09ba55f9edc4b35b9b416447ea0d03e98bf24c7653e10de4c0b09a66f6376a6ddb7118df3a4d706f833bdeb66948fe4dd73e5ee12057e2ecf9abdab6aca87a1e300cdaf0c6e4842f4d2b38d5f387901024a6c8165a39970392d19cfd23847d15c75c9e81fc87a769b2ad42a56fd5a2893e93e0cb686720bbfc6564f5d1275d5016313d6dc3182a15f50efedc951cd9042f4b11683a67f66133285eec8c85990fba44ff6b36d43c232cadb91a1c7fe4dfdef3e3a34f0ae8ff7b5e56b8b7db5d5d78360b5c8421988dc7280e1e60da5a119308edf15d33f43e4915244433fd16a2659485ac0cc4fe80f17515cb83ab3279361537fb3b6cc63fdb40ff3958f697209691a1f172e3d03ef7bc2fc6e589e64d6e0ebd12ebceed726d2926496493f34887a55cf3732d317a3940c8f244ee6b61e76efeb2497992fd0de03e4cb1118f9a47af1474f2027e24539926dd5171ed1e3ad55b11b48c6c4f7372694a00cd0b95469cb1b87b1a61e50ede91c240a6715d91ea5f9078e09df271bde08716c42684f065afd66864930a6b71faf9a4bed85a91393a3a6de731eae93b7b7c5bf7709783fb69cb40bfa5c09974f23b910e93acab9927022a083fdcfda69718bbec0847c4f1532e1b1beb83f1146130670e4e4641656410f847db51081a4f1be5c77a0a6e3803b94e4c5833ff9c13f7ddd391c66c27a9786ce671cee691223a7ea6ca18a8a07a969a666b7a7c1cd5971f550a1b35a70547db085c9f93197720a6d12248d2d690f2d55bdd3e7b48d443594286f44878de37c14ed27014e85fbe13f7fff2ef1ad65bb93cb74947c49fddc1a5e561c961e8f982a6fadde4ee9ee3baa310f6d890ce49d668e70790d7ba535704b797889313059a89ff2195a84488faaa134dcea9c99adee950212d50744acf1412fec34e46cf2e4b518db54627a7a21edc09676c29011ef2167f1522106f04ec08953d4b12c404d8c23891367116c00f235b09491a2389d172f28a3f4b06ed5e7647daa5bdbb953cd6e8e8550a3257c55f65787fd32728225cd06007f7e438bfcbaa5680a13d2145ae8c5c5e89a07d76e34c0b6c93e04da8099e7ca0ab3eb96386a90c8b43caa08266e6d8d2d48d727db3825240048a69739624c8a137d7fb00e3b551bfc8ee25ca9927549f8d084070e4ec89ce25eafbc0cec3e62ab3e36a45703607261512c7807c938a47fef7d358c57bf26a525add53e4f19a13b4846da1f17f0496a2b917c3da5531b7211fe74b4d3f3de5878632cb0338625e9b8876650bfabbcd5b131370e75d016c9c265b5faf59aed7c239d2ac70a426dc2378188f3d17dfc37dde8d8a4189f17e6c113d0f824f32ef048ede66bdd01623f8b2bc316cb54568d9930427c3e4af6ac662cb14e266ac897b26202946425ae24faef13020f09eb2b9410e5a0d460cdb8352dca9574ea6bf4ce2fcc60547004e991aae10238ee6326ebee98c85064413b8672bc2aa4b9a5fba5fe68c0657fb3a023b9bc1c4f4e7b650fcd144c59f3e17bd1d9e760b51ee5479163b7efd98c468966adcd2365114334691d06d8fb4550864328a345d19d682bcb07933fbf8af60df1d4ddd73fa23f8b22d6339f3780b11345a558fe9c35695887815f502559e06fa7a616e4096b71c1c48d5053c1821c11cae807657fb149229154fcbba2e22a1495dcb41c079ba96d145dfcc8a5492c5bfdd1c298516a7ad0c53467592d261acd2c416f4a70be245f49e17dd8853785bacf35cd07e3b5f0f02b87c5548f13424b59677de12a5b4f259a97171b6fb888189f1cdce3a875cc7b4d73325d923681c4b883fe53e959ab88350babeff967d7264592ad26b2cd80156f78f5b7e0f45901aa6c5a10985f0571b509bbc74eead056d5a01fa263c74bade791f2e1525a736fcf6dd692061d290919a5be90b59f64d0813e1bf1f42bda713943ada0b0b5500461e9511dd69a41a4c5d32df1ad4ca83ed519b0060c63a27821ba0fa5ebc1943e92f5b38453a831e84ae42ae1c56f42b0f3bea465ac964dd061709a3c92242d4a587f3f0ac5f212aa4f196cb5e457620981db590bdb2e40df1ae99c4be246847492c7e0ea989ac4a67241721cac48a82cbba0f6333e4f069cc276a1b16eab113e4225868cb3a09bb22162864b24a5ed14a10f52737c07d772b2b56e116ddd8abfaa2810ae5194adaa6416275afcba2d52e8897c23470849f4761b7788e15ba7624218a9687b195b1945b1f533f2e7a0cf3e6baa807b50f6c7d3b7ae2ffced0fcb45e8a21ebc4ef2dfbecd32c7421012b88d99f34b8c7201e738e6160310ca88f67b624044d05742c66fc20bfe0501f0d6871e0405c78c95f7932e93937150eccbf88125ff5477c8b245360659a9cd3d76187a5668a338ffc35bf2d4046e0be8b96eb0e21976efcab6ed78499581e2ba7062fbc510983e1ddda1d2491c40ea5553ee6fb298be0aa973a55e88d3cca369ca29ebb68d2ff1f35c27c19197668ca84fd2c284ff9eb000cb2a12ca73437accec16499b063e0cc32d072e2e393d5eba72e1552b5a0f2564ebd0bf8e036a9a2978917cb06208dc6572eedb6f54710777599447c3ecd17b6793e5e3f40cb0771666981f109d1e6c1986911b0684574522fa26ac4cc4ebca86816efad31de87505aee812cc5a9488ca3052f12ad50dd3e4cb3c8bedec95380a46f2d4c60f7af7e0de8918990312506cb24f6579fcf26e139b32d12e9c54cd0e4b015ef5e27e51b7b26c083399b6a025a044381768a41d3d0cd3ef1c6c75cc4219791a8399a3c2dc69f77aa2d635516103fa8b190a5ad1e71c59c409abbae9d2d3b0dfd3e658e9292a7d9e75befc5082cb3da504649550d20cbfdd600a2561ea3e4052a35706b94dac0e77382195ec80724bc45f5ca770c5255b554460f850a7024673e412809f584c5e4a60f6785ff48fd56cfb6059ef0ebc408267590cdd72e7b460e81b9d193432fa9a8b023be8082a0a87a562a7c1a5589c2eabd43daa1e3af927563b2a3459d409791fc8ccb33d4946cd1c40eb6334bfc6f8c12def32333e568a4c178f2b36cd44a8af34f4ef2c70626a5db76b226a32e73281142c6d79b26434a97cd4932d41f6dd61a9fd4b84e202af7ee2df8e1d0dab1e26ffd8a97fd47d870f6988c6c5ba96c73aa8ee87a37aff8f1da4542cc957dc37cf833d8817c0c606892e0c4bb86e3a5dc9d13840e176025463454745b511bba39dca26c512c801340eae31d2d6fa87163603432535362114671162ef62ac5ce090bf1160937dfa8559e13f51e138212075ec9f063e58e49f8024fcd5f346ac00e31f0121c3a9de5e30b803c3a928a8070f875af029aaa945f85e98456906f58f8a19b24ca3324cd50ae8dd74adcb922734e9d0f0d7256917608389d4b74b3934d32eee319f0df8c4d086db04ebc63c876ad9fa54b51209b5debd1f0684cb15189580a05c73126456671e2e7189024207cf9f8035f41acd7ab8f0b2079d53fe43924d6473dcf3ecd5bd6757d52d05107768bb78a2e9d2d5986c0d4d6d81f24674b3cfe0e8ce965fc58e989c450b5270754ae1e39a3a57264ff37b8c1fe6eb4f68fa2e9e369be2d4f836e1970f082129ff3d446a4c6566f018acb2cb6edfaae99382bbdf853eae40b4ae0ad43f595a170fc6c60072649df9139fb4c3267e3afc2acc20d671e9ef38b885e91e160060e511bfdf7f83fcf14ed2c2d618e5c06906181134e9353e6a0d5c9d0f07e5e1778e3db1200642beeef69c21a259a29a0920e6882d3a78032d994d29f122e21115859a2b5b7ee2b1747af4352a65e9c12c5893d077a77d3c6972f1d16bd653397f55901ad168b8868d9a09b91edfc3ca2520fddbfd49ae60ed4223a5d3351bdb96cd1e0c6ef091cd13b0f91698ca9c94f3fde19547fdbbd1306d11affb38843ac6aaf5b9a8af1d693100ad7cf9caf677f284f189675f6d5cae9bcfbcc81eb961edc8a102e76a23189e9253db066fb40ca33f50ef15fdea20e2fdff82257991296672144c714373003e2d6e5902379d973591e682f45e28432a9482319c007b94a898c60bf471b7f7ec33ac0dcd2ed337bc1472ebe694925bfe355d80f4a8ffe0478f4c2b545a1e7b5f8e646e0fee7a823e682eecc29099b0b974507d61043adacb2996c3273368d0e7bd297216d71628cd1678b93c7d428c8fc2bbac48fe0f127933582b3b67d117e5af7b4079a14f6a3f0eefa9cd1e0beac352a4f296937d9f5c5c55d7acfe20d3c9f4b2b72fb7fc5704dba03cfaa09fafc5e8817ff1ada662d17b68bb9faca2cdeaf63bcecf01bd4f4fef407659f5222fdd9777bbab6b53f8c9fa4491199d43881a1944c07edfac0d50215afe776b471705744fbb32eb9cb92d2aa81c67c8d7ccf67b5a0cdf830b936feb35e42d5a12195ff3bc06e54732e007aadcc8769e887f697a87fdcdbbe756e41182e49a3b0daadce47a8da4cc26f461ab41c7562309f94c16d2004c5378aad9eb01f7fae988bccc143c6f424f47c4a93e2ee4ed44f537b9cd040530877275c6e5f5b7a9a91d4819904302803cd7871ddec64838b06a33db628581c52ebe781881448d1460964b25424c7a485f82b6e86cb01fb01fdcfae15f84474c393d86b032e4830224f15e6d172ea3da01d901ecaef6fbbbed52041aba1dbbe5db7ed2bb655bd0630ce91c40dcc7a7a5123b2ca4dffa11df127bafc9d740969b7f257919b7d641eab80e20da4dbf27f59aab42da6e3dc9ef09386ad80e9ae875cf8080b70ecff00a139a182a182b553553cdc23"}) sendmsg$NL80211_CMD_SET_STATION(0xffffffffffffffff, &(0x7f0000001100)={&(0x7f0000001040)={0x10, 0x0, 0x0, 0x800a08}, 0xc, &(0x7f00000010c0)={&(0x7f0000001080)={0x40, 0x0, 0x8, 0x70bd25, 0x25dfdbff, {{}, {@void, @val={0xc, 0x99, {0xffff, 0x55}}}}, [@NL80211_ATTR_STA_AID={0x6, 0x10, 0x409}, @NL80211_ATTR_REASON_CODE={0x6, 0x36, 0x4}, @NL80211_ATTR_STA_SUPPORTED_CHANNELS={0x6, 0xbd, [0x2]}, @NL80211_ATTR_MESH_PEER_AID={0x6, 0xed, 0x4c1}]}, 0x40}, 0x1, 0x0, 0x0, 0x44011}, 0x48000) sendmsg$NL80211_CMD_RELOAD_REGDB(0xffffffffffffffff, &(0x7f0000001200)={&(0x7f0000001140)={0x10, 0x0, 0x0, 0x200}, 0xc, &(0x7f00000011c0)={&(0x7f0000001180)={0x14, 0x0, 0x300, 0x70bd29, 0x25dfdbfd, {}, ["", ""]}, 0x14}, 0x1, 0x0, 0x0, 0x4}, 0x8000) sendmsg$NL80211_CMD_CONNECT(0xffffffffffffffff, &(0x7f0000001340)={&(0x7f0000001240)={0x10, 0x0, 0x0, 0x10000}, 0xc, &(0x7f0000001300)={&(0x7f0000001280)={0x6c, 0x0, 0x10, 0x70bd29, 0x25dfdbfe, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_WIPHY_EDMG_BW_CONFIG={0x5}, @NL80211_ATTR_BG_SCAN_PERIOD={0x6, 0x98, 0x101}, @NL80211_ATTR_PREV_BSSID={0xa, 0x4f, @random="30db18edbfed"}, @NL80211_ATTR_MAC={0xa, 0x6, @random="115d4892fc99"}, @NL80211_ATTR_VHT_CAPABILITY={0x10, 0x9d, {0xc0000000, {0x8, 0xfff, 0xff, 0x8}}}, @NL80211_ATTR_BG_SCAN_PERIOD={0x6, 0x98, 0x4}, @NL80211_ATTR_MAC={0xa}, @NL80211_ATTR_DISABLE_VHT={0x4}]}, 0x6c}, 0x1, 0x0, 0x0, 0x20000000}, 0x40810) ioctl$FIOCLEX(0xffffffffffffffff, 0x5451) r0 = signalfd4(0xffffffffffffffff, &(0x7f0000001380)={[0x4]}, 0x8, 0x80000) r1 = syz_genetlink_get_family_id$ethtool(&(0x7f0000001400), 0xffffffffffffffff) getpeername$packet(0xffffffffffffffff, &(0x7f0000001500)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @local}, &(0x7f0000001540)=0x14) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(0xffffffffffffffff, 0x8933, &(0x7f0000001580)={'batadv0\x00', 0x0}) sendmsg$ETHTOOL_MSG_CHANNELS_GET(r0, &(0x7f00000016c0)={&(0x7f00000013c0)={0x10, 0x0, 0x0, 0x10000}, 0xc, &(0x7f0000001680)={&(0x7f00000015c0)={0xac, r1, 0x0, 0x70bd25, 0x25dfdbfe, {}, [@HEADER={0x14, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_INDEX={0x8}, @ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x2}]}, @HEADER={0x14, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x1}, @ETHTOOL_A_HEADER_DEV_INDEX={0x8, 0x1, r2}]}, @HEADER={0x4}, @HEADER={0x34, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'veth1\x00'}, @ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'veth1_to_team\x00'}, @ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x2}]}, @HEADER={0x38, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_INDEX={0x8}, @ETHTOOL_A_HEADER_DEV_INDEX={0x8, 0x1, r3}, @ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0xe1c78fadbe4b06c1}, @ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x2}, @ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'ip6_vti0\x00'}]}]}, 0xac}, 0x1, 0x0, 0x0, 0x20040044}, 0x20000000) r4 = syz_genetlink_get_family_id$nl80211(&(0x7f0000001740), 0xffffffffffffffff) sendmsg$NL80211_CMD_SET_CQM(r0, &(0x7f0000001840)={&(0x7f0000001700)={0x10, 0x0, 0x0, 0x4}, 0xc, &(0x7f0000001800)={&(0x7f0000001780)={0x50, r4, 0x800, 0x70bd26, 0x25dfdbfb, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_CQM={0x34, 0x5e, 0x0, 0x1, [@NL80211_ATTR_CQM_TXE_RATE={0x8, 0x5, 0x13}, @NL80211_ATTR_CQM_RSSI_LEVEL={0x8, 0x9, 0x8}, @NL80211_ATTR_CQM_TXE_INTVL={0x8, 0x7, 0x6be}, @NL80211_ATTR_CQM_TXE_INTVL={0x8, 0x7, 0x59}, @NL80211_ATTR_CQM_RSSI_THRESHOLD_EVENT={0x8, 0x3, 0x4}, @NL80211_ATTR_CQM_TXE_PKTS={0x8, 0x6, 0x3f}]}]}, 0x50}, 0x1, 0x0, 0x0, 0x4000010}, 0x50) r5 = syz_genetlink_get_family_id$ethtool(&(0x7f00000018c0), r0) sendmsg$ETHTOOL_MSG_FEATURES_SET(r0, &(0x7f0000002e00)={&(0x7f0000001880)={0x10, 0x0, 0x0, 0x1c400c0}, 0xc, &(0x7f0000002dc0)={&(0x7f0000001900)={0x14a0, r5, 0x8, 0x70bd29, 0x25dfdbff, {}, [@ETHTOOL_A_FEATURES_WANTED={0x108, 0x3, 0x0, 0x1, [@ETHTOOL_A_BITSET_BITS={0x70, 0x3, 0x0, 0x1, [{0x10, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1}]}, {0xc, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}]}, {0x10, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x9}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}, {0x8, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}, {0x38, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'batadv0\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0xf, 0x2, 'ip6gretap0\x00'}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0xa, 0x2, 'veth1\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}]}, @ETHTOOL_A_BITSET_NOMASK={0x4}, @ETHTOOL_A_BITSET_MASK={0x8e, 0x5, "ad6b767c406408d5f5db7dd85d7b77bee4eccc3e05fafddbc08786715fa051206e87798e8bf9a1f4ed6147a5a9cbfdd83d428821c1e4663b3fae1682ca297c512c5f24a4d27b65c865f71fcd716e0db65ad44d498321bfde32690a149fd6bfd3d0e395832b9fd488d0e7042318cfa9a9705e426bf20d520fa2f2fee728b9431c4a53b3aa0208ce2066ee"}]}, @ETHTOOL_A_FEATURES_HEADER={0xc, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x3}]}, @ETHTOOL_A_FEATURES_WANTED={0x304, 0x3, 0x0, 0x1, [@ETHTOOL_A_BITSET_BITS={0x24, 0x3, 0x0, 0x1, [{0x14, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0xf, 0x2, '(:$\'!\\[%\xc8/\x00'}]}, {0xc, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1a40ce69}]}]}, @ETHTOOL_A_BITSET_BITS={0x234, 0x3, 0x0, 0x1, [{0x3c, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x3}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, '$\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0xa, 0x2, 'veth1\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}, {0x34, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0xffffffe1}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x7ff}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, '+\x00'}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x6}]}, {0x34, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0x7, 0x2, '\\-\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0x8, 0x2, '%[\'\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, ']\x00'}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8}]}, {0x38, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'nl80211\x00'}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x10000}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x4}]}, {0x24, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0xa, 0x2, 'PPPPPP'}, @ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}, {0x54, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'batadv0\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0x12, 0x2, 'veth1_to_team\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0xb, 0x2, '&],]!-\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'batadv0\x00'}]}, {0x3c, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x2}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x15}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1f}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0xf, 0x2, 'ip6gretap0\x00'}]}, {0x4c, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x5}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'ethtool\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'nl80211\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0xc, 0x2, 'nl80211\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x8}, @ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, ',\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}, {0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, '.\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0xc}]}, {0x3c, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0xa, 0x2, 'veth1\x00'}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x1fb}, @ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, ')\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x3}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}]}, @ETHTOOL_A_BITSET_BITS={0x8c, 0x3, 0x0, 0x1, [{0x3c, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x5e9}, @ETHTOOL_A_BITSET_BIT_NAME={0x6, 0x2, '}\x00'}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x373}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x20}]}, {0x8, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_VALUE={0x4}]}, {0x20, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_VALUE={0x4}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0xce6}, @ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}]}, {0x24, 0x1, 0x0, 0x1, [@ETHTOOL_A_BITSET_BIT_NAME={0x5, 0x2, '\x00'}, @ETHTOOL_A_BITSET_BIT_INDEX={0x8, 0x1, 0x40}, @ETHTOOL_A_BITSET_BIT_NAME={0xf, 0x2, '^$\'\\++\'):)\x00'}]}]}, @ETHTOOL_A_BITSET_MASK={0x1a, 0x5, "12a2422a9146a4c4bb4e79f09af9a746419796d02e38"}]}, @ETHTOOL_A_FEATURES_HEADER={0x20, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'bond0\x00'}, @ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x4}]}, @ETHTOOL_A_FEATURES_WANTED={0x1028, 0x3, 0x0, 0x1, [@ETHTOOL_A_BITSET_VALUE={0x1004, 0x4, "543e3992d53af008743d984e4b3850f4a40b894fa460a93ae44467fd84f29e7cbd42169d5a5ff22c95b8fe9f81b34c9e5c17256f55ca2c01ed75e298ed9d78529dcabe56cd277bda184b8706802cf41475de485aac703c5111b0c155b647eebff093b84ded2270928d569f0aee3da8dbd8a29ed00abf71cd0f8ba85c48f0c9d074e3d3128cb36d5360e49e310d8d90b0035e2edee1facc53659285aa395d8c4b7c70f1fc15995e2d2ec013767e8c0494a90bfaf02087185ec370786a2c7bd5b968b76a796cbd2ae1803055cc1d397622f393e2bb7598b80bedfd8244a43893706a10a77da5158051288f453a8cbd876b1e245db410c759d7807c8768e28e0a6fa77c8950f51cf00862b541703b11d775494b410c2c38ce67390c83b5dd4442a011803de7e3143f498c7de20d071e98540c6c31c655e0c3d9365df20b62b1c642b83eea475c17a87ccbc506556be29820ba19b54422ce84aedfc53f2148270d886225826afe877aac2f0ff47a3b68895139dd5f14640b289554c3a919f933c9dfaf049c6b7e0c96c4bccc14bca85d9bda45fe88b21c76802e60b580db793edd6738a05209d3dfd1cabcd9ec909664b63dc4a98ecc14168808a531f69b3004deac96edfef6f45710e558fb7e9baa4e0190e3cb507ead4584b96b8394ebf73c06a72fe415efb513ba2075dc521bedb1f0a1c81c07856606065e8bfdea2d13e3513db3bac1f6f2e472fbfc5872e325aae27d14051c92c7d53d6b1f7557849acc577b3a0499bbfdc73175ad7aa419860b7d50a7ca643f4831371de7528b28130f8336faa6d993fd10975d651b35d8ddde7698b8728560da0af5969fd53198721758ec5ff4ac8b7e13d6f9eb77148a5a981bb294ec7426cba8c25ef1970c786ddae547944f7bb9735638be4e53632acc45d126f6d574f135ab0d843a9f64025920af39a5045456da97509879e7bc01076e53534680fbfe7a1030e27a7e2ea2d88423a7d07df67cee85a9165f453be4d9d8dfb64f34be08b6652520700057c68b741f7573b7dddc311b99e49e0ab4a17988ed0a055dc2f6e981661fb2fa868c7979fd6d11b9191c1fc434341f9f7369ba1878fa49adabe27e0b43366b75c29f5efb634a357e7e8950f1b7be9b754174bd11ef4b0e1cbf0f54b5d21f7330be4951197be8604e480a54c9835fad2d8c18e59a7aa25a585be95a57e817d9ed841767e84d1d1442c37b7dca13584ce1456ca9498da238a100d9c34d7a10066e2df1cf9d392d32d1d3583b0af14fdbd3a41496052ef1b4c515d19936306e1b415fc5dc93888a64e11cd009dd27d94940f4d0e4f2416a535b4877245f45305eb809052914f7b678c8ebfa86f4bc60f26ef86a0a62d65d8530915a88171bfdda085e3417a3b88fbbeba03c154c2ae2ec85bdff24274e6473fc69f952b149f99a1fe52ee057ef25ab586796d6ba4c22f99e8b1cf030b7c216a0862e33a8cdd965153aa46d98c50ee847a39f3a8ef09b31e9106ded5f8b471685fc2bced5ab2241306039b1c4b91e2f240c74220ed548fbc54cacfa42bb440568d4ae105a270f5d975aa0fb36d72d5d1c4e4ececd52e46f4cd0aac14a66622231d48b50bb3632cda365e03800c5c7a6d15cfea0f5c3288baa88b4fd4dede0f797111b897227d8a167fbb7241a3b28988d5913e23193958a511a3da4522c41fdea42f6dbfe74c6ae7ad967e83ddfa05effe6c78bfb5831a87243639d45c78ba2edefb6a24853adf7ffe76644f0a96aad00ea04b1c0d569513d332b7ae9c9af642fddd5e722d0658151871720d360f369c8524491a34ac3e15721ec9c34aa35a6a656e1a6079dc6a1274163a114d8873f0d1d75b4dcbe2c1fa1fa147d4d4e1443a65059055faf619c88b09ce10dd5fefef4612e4768ba492cf6d2dac19ecfbf7cf21af5f6892e87428252c526f8afcdfe1e84f373458f46aed10114b8733121da08ffcc591103be5a32eb2ea525959be0a0ba257c0879d2a70e1823f1274bd3e466e1b0b3731536584af3dace78354d2f40a265e40dd2d5052e7fe1529fbd9680f377b46bca486d820f688125f2704083c165bfc1ee56c0a8f4e782b175df17415fd8aa14050b5ea0d5631300d672fa5d76452ac193972f819c147e6b72e15e30c2d2843be12ff0aab10310bf03732e908000e6b30ffc1aa576226c09613eb34eb14077a3d6d3a87cea5c4a0194ea23fe91a0ddd6626790359a914cc577715db8d168a58ccfda99357ed611b735dc0a00e3e365a630419be65988d4c3307249fb68eeb4df916255691124b231b0c37b17e388f1b042ac2726ce9e43f6ddbac66e844db89b411ff55ce9756eac7d821a697ea8395b49ac34a86ba0d88e306dab21ddcc89fb272bbb030848c9e8ab467bf7f0db03bf89bb10fca4f6ee1c89bd3bb604eeb2c00c1c2f6c60ce7a1829cd1ab3cf414681bdafb8b953b92acc8c549271584cb67af82124640dd51f83763d85e99d5d79a0d72d970928896060eeb769926e92cf9de96c39967d533899a79b79eb89d6b4b5cf76b941c4eea763eb447118d377dbe527d6ab957fde0aa9e9029db33578cb72fc077b1abf4efa8fc9208d10ee48422529105f901d00d53c6fe11e5ea2d6196662392cd669a951fb81e44039ddb9cb887795c3ec6e70a9a82424db114dac7f58295443ac8afec1e7dbe669216ec52ff84e094d4e67313f57ce65f9d38bfa01955a6e3e9656fdf2bcfb91c5c0b9d8ae980aab49bd590782e6632f6ba0830b14f1b67157b2d5e20967b76ac26d12e6d28ced11fe924e6a1de6cc56bb5a3af762f75053cb016e7487ee4a4ba723b29c9b57847c0aeba4825e50612835332c7dc9bef4cbc9327c30c747cf4921ecca4e11edb50e85e1fd0357d9953ce7aa34d476dc70be7267165ea5d8563e1c6d633d417ffd3cf9c8aa46149ad32cc7327d9239c93ce87e9f7c028f7f880043fc8cdf8dd07e5aa7517ed24ed101c37e04561909d6bd5891fca49b6c481dcd11e1302611fa9553e4ddd97969546faf75c13ac46cda84923b390eda7a0be6d8738c51c44f562bd2d02e09d40055d2ffe4fbc24b9c9260df3fe7e0b3f7b6c92b1dcb3c3187d170f3a4bc6d68b527980592a9a31f7fdedaa691a2462ecbb258ac2ad38e38eba5530bda69d68813ba2a3281a6f6039614381537cc319160faa093c540a7f393a31745afb476dc21047064b426cbecf7e504b925758b7d108fbd0d4913ffb579f1e9b0ced17b4519728e4b4112c7cd0e9aa8c50a2ad8eb20e196d1f2eb99e69483f99f2bd2369177cfa570f2ebafa9beff2fb5f54c82d513a0ee659e1f7e340d32eb604c8b759c8605bd0ee9e15a057f65fe1564d0dadf333d896b55ed9625b6f343f7ef0e50dd3413e497b89ab8e5dbe1714e95a9cc81dc5598e0c7483815aa94b02f27ba171983640d848ba8051d374b5ea7ec907c0364c9756010d3430571c5a2c06f5ce7b6f06698e789c0a15597e90b9cca0d66be63360cd93f70626fa7f7749d93ff13efd6efd633be787f0e9015fa96b76568976fefa09454ef6c25fce51e85649efe71e82e609a67503aa988ee1255dc06b268991d9636246eff7a8502904d777e7c0d6373be28adcc1e14a62f624162a4b484acd0dc51b954f8995afcaba7585894f5d2ec38522b2ce3fbdee4d7c4a19947bd7fc11b4d93a4884a01437c39a199cee02574c82498ca9d47f301fdb493c8bc3ce4554fdffab4306bf2347384f661d332b8c979701589c10d0126b1b55e056df6b58a5200041bd7fa64d91d6a173fefe01caf825f1245db72dfe67c2fcfa3bca7980c645180178792edb5a605f86b63cbd4668df36466ec4ddc2f1e33bc13f753fe0e34a9c9bae6b24f2c3cef7aa487cf12d2e5829a7934cf492c89b0d7a2da8efbbdc749c0103ccf64bce7cbc4c13a68ed41ef858f173a08b75cc45d6d4452f527b15a7e66a382c17bf8e2b611496e6790312329dfc88e7e595fa821f0beac48c0bb20e9fc3c040ab9f93a3dab392cc83ed7035ef7af578eae9211e37389eaf4f07380fd92d220779ff52a8679177668c2f025d0735f91802f06fda1ae2c16df6fe3821237987f1638dcb2cc850e0dd5ae72a190f1c2813e069bfa7daecf4df3144f9a6b5cae705690fbc6dd889497e4c65afb44ecb3c596f9938f13b7991402810b15207e9179e8a4ca46c8bb443f42ac561a4e33da1d07f8eccb0bd6d34a97085dd1e2e0fa8ba2401f260e420cf12c67e2a5ed44819fc294c17bd19846266425abb3accad38fdf63fa5bb06aefbb5df2094153f2c52d741bc263d45c41c49e3262a2ff58d31dacce5a1c33ba54fb435cc099e43e07f91aab8695acc37708d29d9d0b629942383576cdfd3b2104ae823796eede617b4b951fb490f2a313d09cb7df6c584d63d55474cd18768272fad323500ee74ecc7ca865b14b078d2b800f8559264a3e73da1682bf54751f2b3a79522e0b2fde56ac26469b1e15703a92baa68bc35ae5e95cdc3ab14252d643c420e04ca1c5983faa4f3b67bf6776cf5216a5e1a78fe974fec6da76cc30ac867a3a774a2faeeb1cd86ceaa17ed99177802498fb35150263460f3c6b70c16daa06036081cee76ba2088dc9f2d48413af02a6b6bae2aa081c7c039bb12b931188274213a70ac5f1a5456ec5e02a2b542796536a575ac26a7a581b29c1c85c3fc00c9904bf5606664420f9dbec8dd947b1a8f9519069639e24ba4947e7760f514a471aa4831fa5dccd118162ff7dd5ddfb92a940ffe0aeee9e4bb051077f55b3dd7cbddea764fc70886c8db0382a86bbd46722847ecf748bd08ef7a147685c51fb921041a9820612ccf233762be14434cb73fa357317076ce360662081d9c94e9d02d192aae9ba0a3d780a6f4c94b6dbc038b593604a3398b8b64a4565ee387fed381407cab11bee7bf42dccd8177a5cc365ea1df95d66466b3211499c6e04e89f4d2f963a8c26d884a14cab36e81f90ba9e1a52faec2a96dcf899888fcf5d19ab93c801b2fecf5dceb375972ac5e32d268ba94d29c889566a8de9390ca8e56f946a43aa85a58d9d87815007f4cc9f2f8a5714f7d6a23701f1e7611801fad0e538dd0fdcf67daee43de74e0ac3b90e5577ae6cc5582fea796cad757cbdb0e8c4985985b28252d2741c126673b4dbdc97787bae2080a6bdcf8d343ae7cd6be4dab618c4e21e620d7b84eb397e36f42bd359cd30ae4c0b1b484a02680074670348e24eab9124517983b879801bb0737cdc1e39bab0ff02371edf91ecd788c31628d5935b06a148980014611cfc906d7c64fffcbe6d2e14ef8fc99177ed204d36a5973db81929293cbdf39179ad67b1de3e7a5af4bb5994710f3460dcfeed88be6255da7e66f4c0846a402b330148f7452c6bc138a9a941e8435b948dec645a7269a86103f47cd7b3a52fd7788bb7e63a5df0b8033fdf9ba8f0e397bdbb78b63a49358db796c5be0eda097fb053ed860e7fe8df94c9bfa086ca604182003656cb977dbac213d01d2190beda7255a6e804105becc4dc0d44bd4ccd373c283c101b9ca312806e77870c02ef860f2674a6b29683b069544c81003235cd3220f44645761b7472b3cef2e8e95acc64677e4945fedb8c8faa71d24018cf68ca889b06275a59dc186115fb73bf8b6c4124020e7eeb90f718dad515d3698e0c026364ecbe77f6103e67ef3427bc81fc08a2ce6582021991732b3131961f1d5ab1fa8730ff7c414bec9ea5149fae873ecf2993a4637e9a0a6edfb028583c208b7099f08176336480c9035bc53063"}, @ETHTOOL_A_BITSET_NOMASK={0x4}, @ETHTOOL_A_BITSET_NOMASK={0x4}, @ETHTOOL_A_BITSET_VALUE={0x18, 0x4, "f9bcced9aa204e3dcb05732d923042f4a49747f4"}]}, @ETHTOOL_A_FEATURES_HEADER={0x14, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_INDEX={0x8, 0x1, r2}, @ETHTOOL_A_HEADER_FLAGS={0x8, 0x3, 0x3}]}, @ETHTOOL_A_FEATURES_HEADER={0x18, 0x1, 0x0, 0x1, [@ETHTOOL_A_HEADER_DEV_NAME={0x14, 0x2, 'ip6tnl0\x00'}]}]}, 0x14a0}, 0x1, 0x0, 0x0, 0x8000}, 0x20004052) sendmsg$NL80211_CMD_GET_STATION(r0, &(0x7f0000002f00)={&(0x7f0000002e40)={0x10, 0x0, 0x0, 0x100}, 0xc, &(0x7f0000002ec0)={&(0x7f0000002e80)={0x30, r4, 0x10, 0x70bd29, 0x25dfdbff, {{}, {@val={0x8}, @void}}, [@NL80211_ATTR_VLAN_ID={0x6, 0x11a, 0x2}, @NL80211_ATTR_STA_WME={0xc, 0x81, [@NL80211_STA_WME_UAPSD_QUEUES={0x5, 0x1, 0x81}]}]}, 0x30}, 0x1, 0x0, 0x0, 0x8001}, 0x24000080) ioctl$FS_IOC_FIEMAP(0xffffffffffffffff, 0xc020660b, &(0x7f0000002f40)={0x800, 0x2, 0x1, 0xfffffff9}) prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f0000003000)={&(0x7f0000ffa000/0x4000)=nil, &(0x7f0000ffc000/0x3000)=nil, &(0x7f0000ffa000/0x1000)=nil, &(0x7f0000ffd000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffb000/0x3000)=nil, &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000ffc000/0x4000)=nil, &(0x7f0000ff9000/0x4000)=nil, &(0x7f0000ffa000/0x4000)=nil, &(0x7f0000002f80)="251a84c38f00a4639634cc6538e949507edd76e42b8bc5db8cdab7e72f247633aa4ece151e89927e9ba48d9630c474ca095d4b0058c5c77f9b840d4ba59a1977e89b0ae80449292f0924f00b1c776acb1d3d", 0x52, r0}, 0x64) sendmsg$TIPC_CMD_GET_REMOTE_MNG(r0, &(0x7f0000003140)={&(0x7f0000003080)={0x10, 0x0, 0x0, 0x2000000}, 0xc, &(0x7f0000003100)={&(0x7f00000030c0)={0x1c, 0x0, 0x0, 0x70bd2c, 0x25dfdbff, {}, ["", "", "", "", "", "", ""]}, 0x1c}, 0x1, 0x0, 0x0, 0x801}, 0x44040) sendmsg$NL80211_CMD_UPDATE_FT_IES(0xffffffffffffffff, &(0x7f0000003480)={&(0x7f00000031c0)={0x10, 0x0, 0x0, 0x8000}, 0xc, &(0x7f0000003440)={&(0x7f0000003200)={0x234, r4, 0x1, 0x70bd2c, 0x25dfdbfc, {{}, {@void, @val={0xc, 0x99, {0x1, 0x30}}}}, [@NL80211_ATTR_IE={0x11, 0x2a, [@cf={0x4, 0x6, {0x0, 0x8, 0xeb9, 0x200}}, @channel_switch={0x25, 0x3, {0x1, 0xc, 0xbd}}]}, @NL80211_ATTR_IE={0x1fd, 0x2a, [@fast_bss_trans={0x37, 0xe3, {0x2, 0x5, "484927d097bd407fd477655c9067d243", "63b4f1096266c0e737ff5f33d49753f3d02507f9bbae8723a813bf0b26140e0d", "ff71cd7c211f7c2e4bfc7bc3811b5c2c63c782bd45e7b08ba7894569e2d52d29", [{0x2, 0xe, "36346ef86665e4b2158f84409129"}, {0x2, 0x11, "b653077e04daf97baedd290345f8fde9a9"}, {0x2, 0x27, "2f888f0c455de2c3ba7ac5e40a37910cdf5df0f12c11fdb5856da119f48bb94c6eb12537e2b8a7"}, {0x4, 0x25, "6801a4b00abb5acb2500a00ee0d96c7a49f808f35d2bd40b7006837c443345478fe791ffe6"}, {0x3, 0x1c, "7ce7ced719ff1e61d9d8142e504165247f35d7d7ac59964d61955081"}]}}, @measure_req={0x26, 0x68, {0x6, 0x4, 0x1f, "ac0570e7d84beb72fcdaec0d8b7e82184658b2488ac4a6ac3a925aafb4aa3ed2b6f9fb5cbcced4e6e6fccacf09c7681c35d315fed26ac28e11e094cc7950855940f946277c472769c6af5418ab72099c48e98be56d867aba6c9c927008466d7fbb84085b32"}}, @ht={0x2d, 0x1a, {0x80, 0x2, 0x7, 0x0, {0x8, 0x7, 0x0, 0x81, 0x0, 0x0, 0x1, 0x2, 0x1}, 0x6}}, @perr={0x84, 0x88, {0x1, 0x8, [@not_ext={{}, @broadcast, 0x8, "", 0x38}, @ext={{}, @device_a, 0x9, @device_a, 0x3f}, @not_ext={{}, @device_b, 0x2, "", 0x20}, @ext={{}, @device_b, 0x6, @device_a, 0x2d}, @ext={{}, @device_b, 0x1, @device_a, 0x7}, @not_ext={{}, @device_b, 0x3, "", 0x27}, @ext={{}, @broadcast, 0x0, @broadcast, 0x23}, @ext={{}, @broadcast, 0x6, @broadcast, 0xa}]}}, @ibss={0x6, 0x2, 0x3}]}]}, 0x234}, 0x1, 0x0, 0x0, 0x4000000}, 0x24000085) 23:55:29 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) connect$netlink(r0, &(0x7f0000000000)=@kern={0x10, 0x0, 0x0, 0x10000}, 0xc) 23:55:29 executing program 0: r0 = openat$ptmx(0xffffffffffffff9c, &(0x7f0000000180), 0x0, 0x0) ioctl$TIOCPKT(r0, 0x5420, &(0x7f0000000080)=0x8) ioctl$TCXONC(r0, 0x540a, 0x2) ioctl$TCSETSF(r0, 0x5404, &(0x7f0000000000)={0x0, 0x0, 0x0, 0x0, 0x0, "37b99170e78bf03da99098f19bb5dc9002047c"}) 23:55:29 executing program 2: r0 = socket(0x2, 0x2, 0x0) sendmsg$TIPC_CMD_SET_NETID(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={0x0}}, 0x0) 23:55:29 executing program 3: mbind(&(0x7f0000fff000/0x1000)=nil, 0x1000, 0x1, &(0x7f0000001000)=0x7, 0xfff, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/6, 0x6) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/122, 0x7a) 23:55:29 executing program 2: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000080)=@newlink={0x40, 0x10, 0x601, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @bridge={{0xb}, {0x4}}}, @IFLA_ADDRESS={0xa, 0x1, @remote}]}, 0x40}}, 0x0) 23:55:29 executing program 0: mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) mbind(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0, 0x3) mlock(&(0x7f0000fda000/0x4000)=nil, 0x4000) 23:55:30 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x600, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:30 executing program 0: mq_open(&(0x7f0000000000)='{:*}!*,-\x00', 0x40, 0x0, 0x0) 23:55:30 executing program 3: r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, 0x0, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r1 = fcntl$dupfd(r0, 0x0, r0) syz_fuse_handle_req(r1, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) ioctl$SNDRV_RAWMIDI_IOCTL_PVERSION(r1, 0x80045700, &(0x7f0000001000)) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:30 executing program 4: r0 = shmget$private(0x0, 0x4000, 0x0, &(0x7f0000ffa000/0x4000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) 23:55:30 executing program 2: sendmsg$SEG6_CMD_SETHMAC(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, 0x0}, 0x0) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) mremap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x4000, 0x3, &(0x7f0000ff5000/0x4000)=nil) [ 325.538391][ T3129] ieee802154 phy0 wpan0: encryption failed: -22 [ 325.545138][ T3129] ieee802154 phy1 wpan1: encryption failed: -22 [ 326.869307][T12138] IPVS: ftp: loaded support on port[0] = 21 [ 327.330078][T12138] chnl_net:caif_netlink_parms(): no params data found [ 327.452559][T12138] bridge0: port 1(bridge_slave_0) entered blocking state [ 327.459894][T12138] bridge0: port 1(bridge_slave_0) entered disabled state [ 327.470419][T12138] device bridge_slave_0 entered promiscuous mode [ 327.493878][T12138] bridge0: port 2(bridge_slave_1) entered blocking state [ 327.502543][T12138] bridge0: port 2(bridge_slave_1) entered disabled state [ 327.512251][T12138] device bridge_slave_1 entered promiscuous mode [ 327.582966][T12138] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link [ 327.614467][T12138] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link [ 327.661463][T12138] team0: Port device team_slave_0 added [ 327.671298][T12138] team0: Port device team_slave_1 added [ 327.709842][T12138] batman_adv: batadv0: Adding interface: batadv_slave_0 [ 327.716967][T12138] 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. [ 327.743406][T12138] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active [ 327.759260][T12138] batman_adv: batadv0: Adding interface: batadv_slave_1 [ 327.766989][T12138] 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. [ 327.793254][T12138] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active [ 327.841182][T12138] device hsr_slave_0 entered promiscuous mode [ 327.850430][T12138] device hsr_slave_1 entered promiscuous mode [ 327.858893][T12138] debugfs: Directory 'hsr0' with parent 'hsr' already present! [ 327.866749][T12138] Cannot create hsr debugfs directory [ 328.064926][T12138] netdevsim netdevsim5 netdevsim0: renamed from eth0 [ 328.091069][T12138] netdevsim netdevsim5 netdevsim1: renamed from eth1 [ 328.112970][T12138] netdevsim netdevsim5 netdevsim2: renamed from eth2 [ 328.129333][T12138] netdevsim netdevsim5 netdevsim3: renamed from eth3 [ 328.230844][T12138] bridge0: port 2(bridge_slave_1) entered blocking state [ 328.238076][T12138] bridge0: port 2(bridge_slave_1) entered forwarding state [ 328.245882][T12138] bridge0: port 1(bridge_slave_0) entered blocking state [ 328.253464][T12138] bridge0: port 1(bridge_slave_0) entered forwarding state [ 328.266806][ T9539] bridge0: port 1(bridge_slave_0) entered disabled state [ 328.277137][ T9539] bridge0: port 2(bridge_slave_1) entered disabled state [ 328.371168][T12138] 8021q: adding VLAN 0 to HW filter on device bond0 [ 328.396766][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): veth1: link becomes ready [ 328.406052][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): veth0: link becomes ready [ 328.427105][T12138] 8021q: adding VLAN 0 to HW filter on device team0 [ 328.445187][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bridge: link becomes ready [ 328.454982][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_0: link becomes ready [ 328.464358][ T8463] bridge0: port 1(bridge_slave_0) entered blocking state [ 328.471596][ T8463] bridge0: port 1(bridge_slave_0) entered forwarding state [ 328.489447][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bridge: link becomes ready [ 328.499296][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): bridge_slave_1: link becomes ready [ 328.508511][ T8465] bridge0: port 2(bridge_slave_1) entered blocking state [ 328.515905][ T8465] bridge0: port 2(bridge_slave_1) entered forwarding state [ 328.538255][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_bond: link becomes ready [ 328.559731][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_bond: link becomes ready [ 328.580472][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_team: link becomes ready [ 328.590129][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_0: link becomes ready [ 328.601536][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): team0: link becomes ready [ 328.619343][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_team: link becomes ready [ 328.630955][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): team_slave_1: link becomes ready [ 328.652276][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_hsr: link becomes ready [ 328.661563][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_0: link becomes ready [ 328.682689][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_hsr: link becomes ready [ 328.692085][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): hsr_slave_1: link becomes ready [ 328.707336][T12138] IPv6: ADDRCONF(NETDEV_CHANGE): hsr0: link becomes ready [ 328.746276][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan1: link becomes ready [ 328.754259][ T8465] IPv6: ADDRCONF(NETDEV_CHANGE): vxcan0: link becomes ready [ 328.779589][T12138] 8021q: adding VLAN 0 to HW filter on device batadv0 [ 328.802155][ T8463] Bluetooth: hci5: command 0x0409 tx timeout [ 328.888306][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_virt_wifi: link becomes ready [ 328.898151][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_virt_wifi: link becomes ready [ 328.939302][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_vlan: link becomes ready [ 328.949652][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_vlan: link becomes ready [ 328.965574][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): vlan0: link becomes ready [ 328.974620][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): vlan1: link becomes ready [ 328.987994][T12138] device veth0_vlan entered promiscuous mode [ 329.008998][T12138] device veth1_vlan entered promiscuous mode [ 329.055286][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): macvlan0: link becomes ready [ 329.063960][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready [ 329.073059][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_macvtap: link becomes ready [ 329.082270][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_macvtap: link becomes ready [ 329.105554][T12138] device veth0_macvtap entered promiscuous mode [ 329.120889][T12138] device veth1_macvtap entered promiscuous mode [ 329.159714][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 329.170457][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.180502][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 329.191250][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.201478][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 329.212644][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.222864][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 329.233608][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.245351][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3d) already exists on: batadv_slave_0 [ 329.256446][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.269248][T12138] batman_adv: batadv0: Interface activated: batadv_slave_0 [ 329.281227][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): macvtap0: link becomes ready [ 329.290526][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): macsec0: link becomes ready [ 329.299612][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_0: link becomes ready [ 329.309327][ T58] IPv6: ADDRCONF(NETDEV_CHANGE): veth0_to_batadv: link becomes ready [ 329.327365][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 329.338117][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.348239][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 329.358954][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.369072][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 329.379696][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.389743][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 329.400363][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.410379][T12138] batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_1 [ 329.420990][T12138] batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! [ 329.434482][T12138] batman_adv: batadv0: Interface activated: batadv_slave_1 [ 329.449876][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): batadv_slave_1: link becomes ready [ 329.459277][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): veth1_to_batadv: link becomes ready [ 329.483318][T12138] netdevsim netdevsim5 netdevsim0: set [1, 0] type 2 family 0 port 6081 - 0 [ 329.492848][T12138] netdevsim netdevsim5 netdevsim1: set [1, 0] type 2 family 0 port 6081 - 0 [ 329.501690][T12138] netdevsim netdevsim5 netdevsim2: set [1, 0] type 2 family 0 port 6081 - 0 [ 329.510680][T12138] netdevsim netdevsim5 netdevsim3: set [1, 0] type 2 family 0 port 6081 - 0 [ 329.796643][T12082] wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 329.804719][T12082] wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 329.818945][ T4687] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 329.944045][ T991] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 [ 329.952055][ T991] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 [ 329.959894][ T8463] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready 23:55:36 executing program 5: munmap(&(0x7f0000ddd000/0x4000)=nil, 0x4000) msync(&(0x7f0000400000/0xc00000)=nil, 0xc00000, 0x0) 23:55:36 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x700, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:36 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000003b00)={0x0, 0x0, &(0x7f0000003a40)=[{&(0x7f0000000140)={0x18, 0x10, 0x301, 0x0, 0x0, "", [@typed={0x8, 0x0, 0x0, 0x0, @pid}]}, 0x18}, {&(0x7f0000000180)=ANY=[], 0x13b4}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}], 0x9}, 0x0) 23:55:36 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040), 0x0) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002440)=""/4102, 0x714) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/37, 0x25) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:36 executing program 4: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RCLUNK(r0, &(0x7f0000001000)={0x7}, 0xfffffe30) 23:55:36 executing program 2: r0 = socket$inet_tcp(0x2, 0x1, 0x0) getsockopt$inet_tcp_buf(r0, 0x6, 0xd, &(0x7f0000000080)=""/93, &(0x7f0000000100)=0x5d) 23:55:36 executing program 0: munmap(&(0x7f0000ffb000/0x3000)=nil, 0x3000) mlock2(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x0) 23:55:36 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x900, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:36 executing program 2: mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) mlock(&(0x7f0000400000/0xc00000)=nil, 0xc00000) 23:55:36 executing program 3: setsockopt$inet_sctp_SCTP_SOCKOPT_BINDX_ADD(0xffffffffffffffff, 0x84, 0x64, &(0x7f0000001000)=[@in6={0xa, 0x4e21, 0xf7a, @rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02', 0xffffff80}, @in={0x2, 0x4e20, @local}, @in6={0xa, 0x4e20, 0x6, @dev={0xfe, 0x80, '\x00', 0x29}, 0x5}, @in={0x2, 0x4e21, @multicast2}, @in6={0xa, 0x4e20, 0xb6, @mcast1, 0x8}, @in={0x2, 0x4e20, @rand_addr=0x64010101}], 0x84) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/209, 0xd1) r0 = accept4$phonet_pipe(0xffffffffffffffff, 0x0, &(0x7f00000011c0), 0x80000) getsockopt$sock_cred(r0, 0x1, 0x11, &(0x7f0000001200)={0x0}, &(0x7f0000001240)=0xc) r2 = getpid() rt_tgsigqueueinfo(r2, r2, 0x15, &(0x7f00000000c0)) ptrace(0x10, r2) ptrace$getregset(0x4204, r2, 0x2, &(0x7f0000001880)={&(0x7f0000001800)=""/104, 0x68}) r3 = socket$nl_generic(0x10, 0x3, 0x10) r4 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r3, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r4, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) r5 = socket$tipc(0x1e, 0x5, 0x0) ptrace(0x8, r1) bind$tipc(r5, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) kcmp(r2, r1, 0x2, r3, r5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:36 executing program 5: syz_emit_ethernet(0xfc0, &(0x7f0000000000)={@local, @random="73610118d31b", @void, {@llc_tr={0x11, {@llc={0x0, 0x0, 'U', "8325ef4c1491b15123843e750e22486eb9d0f2851c28eee54b9bbe39ec928d0fcefc6719ff023c183dac68e8cd78eba9b130d90c1a1167d85fce4558629f7bef017b24cd6fd10827e8af6806a1647cce7ddac67613f8f90237d1527a9bbfaa0ec3847d3c37b715c4ccdcbfd6640b73b67453394b7bee4f79817d01d28af86f6e2239301c8499a0302dd5ea8a6291bbf3bd723f93d4afb1c60525659cc6d49b708bd5d3f45eb664c8e34c06da47e4bd33deaa229bbab76704dabc0a90331a923c981b28811a2032941949682e8b335f2d797088c0727c727774596ea27761a3013718523f754c8f8cab7bc8e7b6fbd921cfc7b4fb87b5d5435b4c84cee4ff516aa27fcae920350639e0b7c617ce3342de92e526b472ebb1e3d67f280ce6a6eb95fe54caa7f4569ded376d5704fdf19ef13fb01b1f2b3f6ef71c585ea71a62dd31a322294099232b65a048d8486e394f386a02f283ee8bd64a2a4885a86278849c10ff846964f4c90dd22c65bcaf1a3b7ba3240caf2b8a17e2118dd8bff7bcf00a1cb796ca715f0197f5a8ca6973ee8ef93db6c379eb5cbb01ed3039f6fb2f21c1b6f7228eee220e2d9cd394b566144058da782fd2d3d98d96180565cfac7390dfc5ddeaa93b4cdc851e13d1c6a39c2881fb597dbccd5289f94510a10e040b76c74135e836a1088782a754fa575e1b725d696b14a2818019c5e2130d31805296f25882fe58e2a3e46b1991de375e29be4cd419b8f95bffe7ddbaad58d094b7815911dad0699818c052bf171c1e5b7cee3569a578c4d40b790288c5c94c94e0c396583f176a938c4087cb374173e15d54fc92f403c09e63a82eee8a4e2d6a8214d25e5a4e06159fddface68bd94cbaae73d6d0384a19252da14a89166514f3d2a0a780b3d0cb267a3548f7975a637e365a23bf6c4b1dcd93860653a002d09efdd8f756283334bf484a4b05636db5a77fe9f9b7c6e3687e82445feee4d2f75112304dd57b46789e89e5a72d8dccadb1f290432ff2866978bc55d031fe65cbe130b4abb2c7502556d83b7ce309a049fbfff343980c8bde653cf8da80df0c02bf98bfe333d5f7359e648fd12e8ed54153d86749c7a1eb90f4aa8bf2724211251f0665768fd9bd2198e94002723dce403f3e5faca9a9b43e50a8f34ab2dba9380ff7e264ebbe5ed116497257d50ac80476d02925e0d3a9f2068d09bd44f05267332c7f67c5cde24f5a49c89e5b4a21d61ad61a6b7850ec1f2c683b37af775a33ab640e69238ab78f72f3f1181ff956443ee2e6abb942a694b215ec0acee208f09151408c464375dd4083fd8a93e836f665827489268e572be213eaeec35ff9953df140e9e20e6d22a51f5f67163abfd4ab08cc628ea06e0f2a1cbafe74b97d386cb2a46bcc9c99ac69823bb05cd89594a4c0d48017ea5615f116e70e708279534c181b62c5c0fb7dff4806b613cc257d56c526577630f334de67c610378b89ac8a51d4b5286245906ebcfc6d2f9ebc5af7a7262b1e5b96824a287da10c832e0ef7abb262fb2d13d4c6d8c3788a68519aef35de792635d676e2a297a398a812dd2de605a155d651d4205d4ea2cb2876450327e9c1034563a23dd8257373e8436d5e206738187eea6d9b21942cb9616d12029eca98c0afc7f837131c8d74b4c2945068487a9d2ffbdf58ba82af7ee6102ec5d12a6fdc824d5c07d362d63f76ceef17b2b86a2e06ffa129c1c0d16a9caca443b1d821222c1782504659e88d8b5fa3a74bb04d165f6b94796f65a295df2cfb7ec6d653c817aa673fef989f606fb934828dc83ab84b1f155e3b51fc61ee3810d32601d339a9297a004397f5aae6b3768f8702fbc2cca991bec40ef39df4293baf1aa504b7aedbbe5cb48d2e6b855aad9bac52d8e27e70fd6a75a560aabccd1a0efaff4a6f86fb7901bfb35447967b1123af19125f1d7b64db7283c6226df976b5952fcd433177467ebc4fb0e4ec5d854b689e799ac066fc8b8dda97a1322882abaddd00d1ccbd3b169e6c570852a96d19e503a6471f70ee31b96af1884cb93974798e394e4711f26c6277c79fd14d434b4548e03dbec1a7a5d071ce10515cd9b5322e30bb1a161c1955097048c4d04818421afbabd9bb9a76516e79d1d3cf8e869df7699fccf42dba656a2484aedfbe4cbf532c973de4faeb3d7a2c77a7562ec70706eeb91f770139491a255c5b737612241ff3d196dbde896faaae305acb5e8f5bf9819c30cbc3ae79b283bd1b3c95fe437671a1415b35408874ea07012a0f7e603c6ac348846214517415e3240009321a5db51b5b04fab11875c7107d03c1d64a068f43424249dca182bb41bc1a73d88a5a483f88d1d6037b296f4fa137452c7183bcc53142b125093ee72acf31102e5e00d83de5917413ea16f6bf69fd98a2e86e29ec2d966390d95cf3a9ab19e71f7a1ae41f901b425fab0542f01616406b35065c2591510f7fcb53e5a663ceab0a2c6a36af9587b13dbd71b2e1a5d6e2e6d2dadb9b73d1f2ad92ded33ea4781fe6df0884998bac5ce83d04e91aa4cda58f772f2faee499fcde5e03a9a336867de17f6134f5a8c090c2fa1a84c1f8ffb727ea45322ff9193c24d3483839800e62aa3fa91fe107d53523042c5862da06ab5cd4974e894ba88b14d917d559c035ac8d369af4b5d25de29d764de5f41b34e33f33ed876e44c5053e490e10bdd3e39358e945c95bece4010deb9520af7af7b99e7d9f01f70b472e9a80a994f4aa4ec2f17f4a662b362ebd26ca69e993e7e9401b1da8705f296ea323c73e5e8d3a7b1147cbfabd47579271d6149f8f619311df8c4f475e2586e69a0e9f6bea2f4d9b61b909aea11c9c8dec8d4a630517cee66a48e73d3c036cd09e4f9a048a159b12e0c7fa8911fb1c5213ac0884671ff7ddec89751846cbbb8e08bf6004a4ba67f818ead8575cee608c3fdd401c13faf0004ba00fa02c4f1bb4d9e5cc7a53499241080932e5e11bdb839f8d835d2a0bf91e950091a938dcd5258faa9d38b0f73288536aaff13e8c7e4693c88f058f7cbfef0cb3941544042cd3872bb79baa31779157074f37cf2e4a134e64e8f74e7b793262ef526ad20a17b0928ac07f423bec00e5fd14ff3043424097a70f7ab0a61eb9bd332dea0daebfa8331eaae05d0da3f11b6a68d2b3cb64141fbb998e5edb90fc516b4e5b3e0f99917f1358cfe14b7c16fa69d69786e6f75cea15380ebb9b6682c7d33cb673d26f4db2e5bc318dd458ef14c859bf6b21a4d0e4785690b3e40323c5d93624654f818fe2fd08fc2e0239eefd66946927e6e70dddb3b4a304bad0b8534df1248cee4f6ffc0b2125b277c99b1a681a465fc1c6cce297678f5c09207527ead41e8154edce21225c668bce74190564092632c479220dccaf765355c4e817ca89dfa013166b24e1cc38a8c5f32dd07c24c91aecc4bd9681363c5d93312eb9415c8157b847764821ad1120de89ebdca288625bd9ef5ce396a728d22c42875dba8453788bfbdd5570ced4c470ebcb36e3ce129feffc9245a96c80e4784297205f57f030f890695268c9ba4c22bf34553aa117a72ae3aaaf5aa8897f5c3325a567f8d88e823e25e77abedcf365da2984472d92e1aa012c748d5f95c575bd98fa3260ca1e948057f4bbb6b52dee5f246b81d3e37bbcd1f356079c986db124096b4cbdf28eaecd811c6d1faed2425642616cfca231197c2bfd467e263d816e23e3f1955659bc92550c8c9bf194e72c114d2263f609adb7017a39b6c38673ac60a27a8c5ff1fe4281e16dc14430bb4dddc2e021d6be10af564864fde02398d63eddd02c410826a1aea362fb9985ffd43937fc273d9d334bd6f3db8ec71d29ed1eec7e4bc13f210f6ef770df682014a4a5e20dbbc2efe6d29f95e4765e51746fe87ecb091226bcb373cdfd4506c25c09999e7f97271e8b1beece3b601835c5552213a7958311bedb76257fc9fab55b5d1912ba67292bd0d2c5dcf6e56f73121f875ca2213b319152443b2f6dac937966d9036305148572b8a0139e4a0580ceeaa08fa9dd11f3055e4116bec77dd3d9c81e6331e434e9860ba796547bdb3a38d51e259e236074a0673f11b987fbfa866072ec3da0f0780e8d86dd631d5fd5a81ae1ea8346c9359b2da9fe7335d4d5b062a9d746e3a436e90c10359610c60f1163a12bc414aec4fd70ab61699ab067fd23e0a6e8268c02cee384360ae257a2b6750c240c0ab8928b017d0950320a959142e282f5a48e85b8531d2ba6e722cde4fccc607bdd6be60651f771621d1f1454a230649384240eeb7a5a0504399299f38ab2daeaf0feef55f154107b4c90e6cfa131c4ac19f15cf11bbf1cdc98ac2707e2bad3a71ddfb527ae38469bcbb9e05edd467b2ac4c11b2e2397fd97a04224d60097385b53461d25dc0b08ed5886384ff34feb30b1743cd6b00dabcf3846ca070f7d866c0a72c727abf31245217f31046259654321051a85ccebbc714f4d71b82f6aa55cf7cf850856823294184b4e34cc8663ce76b286179e73a18b0b9395f9c9cde695496253046a188d5534e3185553c51e186655c841297df1df9fc841c62107d23c4e8048a523f010c20c874eded7c22e88021456499c7ba6b013b88e3201e56d0f45967cc83a348afcfb27ee1bc2bfbc82429b7c855c9a5c7f4240a7ea83801080e49c4aa08a1dccf09dbf827e3cb2bf02289e322b2cf52f9f4269cad3ee9db0007d59226c60033ffc44b8b0cbadd4c89f79fdc687b7441cbcea1d3e40474c11843ceb8ddea1f19532ae62ae2e7f9f06df7261c12904aa3668f59e4b8d6216f770b3d333185ce57d75c9fda227102227fd95364399fd78ea07b4a481409bcf0b967e62966cc9f80b2a2de2c6d89122cdba718d323da86a207ca9a90a38e55c3030d069c7e468a5227908ef6d6e183cffcaca22e85eabf06cf9307f2bfd7389633178eaf62f704b2779db9a5eb2490d35833cb68ec63c01633e11d22f59b0b245755147bf83e38afedc94e978e0dbe93c40b38c8f78e87fda9bc2fa3941ccee83c1311798fd20ce03f73faa3ddbdb3a78470cf76b3e34b028af584076077a50cec9cabb293398364561a9d7fb0dc66193548ef30175799bba272f02adad981e40a5fb5ff4287f28a639cc0e61d070abefa5a84bd6f828a6f5cec5485628e15a89f7ce51b7c28d25257309ec5dfccf26c3017210d44ed779b21611e0f594e1f3c945cd4a5df1c23414b5b195035e9716e9d0579990ca04b79fab6c42c8c76fd98e20f08ea31e48b1477902d1e8fd78c09ce1b50d3077e214645abfc2e67cdbae990a4d915a9441ce459e7861738e46d8cc84469360c31b3ccc76c74d528e1cee6a3d42c1ced5587ea58b795016fbe02480bc37d75f4df795160a702ae332aec27e75b30680e99175d51f8edb4f9d16daf6fa26f958c27b129d93bf71706ed3bd66b6c7559c9f2e45722536971f4dc9a8d8c0de2104b5bf4ef6691a281a0cf32370e8fb0bcb4bb9f488a54f0d1e606d4490933177d550c2db97e88a73f8f560912cc431f2ec5105e5a7838e57b682eb905cb285f08ce4b7acb477dcc4b03c9a7f37306a947d34520775f6dec2bca369aa83333393c20535eee10ec2efd54aaaa8ab26cbd56832bb99ea4e1e0a61386676b90082c1b7b7c87f2a3d175e6f5b14704140c4e"}}}}}, 0x0) [ 330.885346][ T8463] Bluetooth: hci5: command 0x041b tx timeout 23:55:37 executing program 0: mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x0, &(0x7f0000ffc000/0x1000)=nil) msync(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x0) [ 331.190175][T12407] tipc: Started in network mode [ 331.195658][T12407] tipc: Node identity 7f, cluster identity 4711 [ 331.202811][T12407] tipc: Node number set to 127 23:55:37 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xf00, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:37 executing program 4: r0 = socket$inet_icmp_raw(0x2, 0x3, 0x1) ioctl$sock_inet_SIOCSARP(r0, 0x8955, &(0x7f0000000040)={{0x2, 0x0, @remote}, {0x0, @random="39dcd2a0aa58"}}) 23:55:37 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4066, 0xfe2) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/164, 0xa4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000000c0)=""/133, 0x85) 23:55:37 executing program 5: mq_open(&(0x7f0000000040)='.$\x00', 0x0, 0x0, 0x0) 23:55:37 executing program 2: socketpair(0x1, 0x3, 0x0, &(0x7f0000000140)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$sock_inet_tcp_SIOCOUTQ(r0, 0x5411, 0x0) 23:55:37 executing program 0: r0 = shmget(0x1, 0x1000, 0x0, &(0x7f0000ffd000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) 23:55:38 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x6000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:38 executing program 3: r0 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r0, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) r1 = socket$nl_generic(0x10, 0x3, 0x10) r2 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r1, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r2, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) r3 = syz_mount_image$vxfs(&(0x7f0000001080), &(0x7f00000010c0)='./file0\x00', 0x88, 0x9, &(0x7f0000003540)=[{&(0x7f0000001100)="98e5d5409fcf8d790644f2acceb9250c4bb816e63f335bc8301dbff5d9062e36a26707049d673cab3aa8cbae", 0x2c, 0x3b0d}, {&(0x7f0000001440)="4826c337b672a5fa93744ed790f62fce7f15e8cb8a621b3260f99d7dde24af5b14f958d8d5ee7a63bc4c98d3866bed5fbb659b878ee46e11931696c2589a7b184cce810f5414b4970f3f0b9a348ea6b888d025c4db333f4ae2b2f4684a171b60f49d37e9a06a9cd06c86db36b62bff5be6408be029a0bd7fc64018687458b5478ca1f0631a25308ad17e5a130cfc0c3f2fcae1f7406686c4f910ecc107d360ec039d3204bd300642fc5cccfcc9232fdc057fb24e26250e6e78bee6d30a254a3feeaad47e2b9272a836d4e5a5808764c0141ef774433db15f9c25463c5cf689931cd05dea87a956c298dffe1ca47fa041f96b786b0e147a3906626e650315c6137d83053fcfa7a40505e2cde6c5e8156c330221384a05a7cbfbb0efa257f47d700e06f033d997c962f1bf1f047bc63cc3e66d5e240b3662496a16c24e0a61067d5bdbe9021d6170aca369ccf22d2e27065be811e94bc8d1968efc046a48887e0802c5ab8562c677d51a0980746ee92d7ad8b22f720c73695e265cb764d8b1a418fce977c5c367bc6f3d6eabde225a69eadd0b50ca2b87a11d75bebfb9509486a09a538c84d1c5ffdd23e6073e932543de65d0ec0d81c06acf034ab49f6e870d24b10d88dc1a61444c72132b56f447b9e3602cbf064ccae4178bf2c285707a7589b251be47f25650e1d25370d3a5ba8515d06445b59b22f2d886d1bffc972e3e5c2626fa0f911d699296ed334902d1b6f36c154ca2e3fab7c4ffbcf68147962dbcc39a3b5b19995ed464e1862f422681f77652f89c0193bdd5adaad60644af2205f3042c53fe116498ecd21ec6ec729db1b803a697e227fbb0c329625015e1056f2c1e20c85cf1c3640bddd394617856fe1eea9036e87df8d7cfb8875f991d454274318a056086d726aabf2f3dcfc511607d987005a931785086d43004799e73b6b85f1ba5dee01eb15c8058f448f64c0f71bf1868b8100fe290174f5256ae86387b9dba8d771e90d655df806bca6de2f3643cedb27dd7e00a8c8a7ca0afa98f4685508fd92c7d54b596e506ce827dbaa4539348ffad791b49f2bf1478a705a688b2036902e5a164ee3553cd8920c70a43dcd87521349f8ce2507cc13d6f4c11a59e4093783456a2ee99e4617608ab5742dbbb0e7f99caf8fbf9ab1de225ccba9ec7d33d7f45585555b5acc77b85e5f11c706b6f3a68794a6bfb5a3721dcb2851b34bd43763f862d0193911028392a4e39724e576bcd04bdbf15fa802b89dee864040e1d6acdb1e0e997efbd0226d6e12bafd255953bc3d0413d6d0e3a9ed6436c3b669a8e6619dd1cb952c75d32a0a4ce9fca49676db076adad61eba07cc7fe4fd41c447b2e2fe62aec118cbd3b83295feaab0fc600e07cb7320c43581c6e85dfdddb01b01939461e7938699ffb18936d52d51bbb61ce9ac973559f5663081e54f8e0181ac4ad563f30f9fea89eebe30b599f10eac34f706838eaf23b102debbb5164b58f8279ebfff67cd3b585293071d15e47e042186d2ee15b6ad2f17e340a939a0201d6e9accb4f6a7ec29dabe18a020d89d8a23730dc2774a95ea9c34117426b7a0058d10be1592ea439f393a6f130815f2670f64a2cbd891257be66e711d3aea971042cd821a09b2ac2520bd55eb7fcab1ffd8b878d946ef501b148dbd42fdb2654a7a05cbc135b33faad3c88fb70e2fe7cb562caa1461ba2dc3f3810d1edc093a6583115828a81f64c18d2c51c3965532df92707b5e2737025db80c59d9075b0704dd8072776624a121e2ecf03774de1aae29289ccf3a93ce23d6ecf4ccc6d7bfa9b8080f64acb49e84db01790131148d02ad490e7567f4c545625235fa9132d87095325c547b955bca9f32150f83f16326663847889721d835f146fb5c26137745d96ce0414e72aec50ab22889edb99b07af1339e8a64e326c84433948d6b106e7a0726662ff5fec926b4071defb78cafa0e5b45c5d1a6b138605384432c4f9947d13e5e4101f001b0216a8c2cde12d433cfc27d2ccbd7e508e0ca99d32f57cf07753e13c3a5be97be6a2654b409f168ecdf10c57174a7d10ad3257bdb9b4593d03e2635e325643dc078d71821f442b60aa15f02a7c0bac7f2b0137ca2b56cf21ded9109ea49f7596fbbdac7470e60bec341e194494859ce9e8629a0b6912db48c4c0af431eba066f82e23d6e1716d4e9aa112d2d57356cc6af4cffecac588c760011ff7cf8e33d87d780840d0ab8da2d68850a58d28b12722b2fd3fe2bf9ef306cad82fdb0f311189cf381c18bdd1c9942f8604159b43e8df56fff1b68b7f65e5ed1316498890c8111ac508c349e56d3beea6f5f5121310ff711705882a5470f298be4aad931d0f03db6760aa379a53cacea42c63f7af2f29937203c5dcfe3032de8c8773d4b801bfb7097acaabbcd1e28a82f08b0e3ba923f28b9a7b7bba06e60d9d26585bb8470a45324883e19dbca344e0e21e844ae0243ee9f4430c9b62f8d833790c6a7cdff8a005fefc6d675cdac6567a50c9aa127dfd792db50963bb28d90da2d9fc8804926715d0bed688e91ab8f61f55ec19745a792b42a2eaabc2c1ac094b8af4e828599756838520085859d07c7e1f0690919089d1e1582bb2927066fad81ba1d9d31a0fa324a4c0da4d2c2f57a75a6edd54f866b404e2f06d8b719c2eeaa0da39c8b3d0dff132cb0872133eeb888e3e4dd63a6340bf9a061255f26e4b0b718a7deda021962689899d7ae72ad046d1cf7b42f05ad6c396cdbed03d27bef56ae6967439ebcc0bf17f7805ef5608753db2072485f2f052417bb2a47254f0e5ffeafade0464745a95f436b405414363080f1cf0b76dd98564c38ad58de19321f41e95fb118ecb16c265d0cf22cb556034d44f75c0b349e92e443c7ed208da1a100f51687ca4423d27b662408a499e8f2781cd92d7c7e2e17c047a592740eed934ca29e9ed31815d46f590b67410aeb10c35ccdad86d03f948f2121645eaea56c80660004d6b5118efc8da85e451fb34106570686933b059c5d2755689271399930ad5c5832c3d9576404ef83c947f046e07a6a4cd73cf9ac6cb9278732326bb16b216cb5e32b4216b27b8f8ee5313c83422b1a0a0ad5178d6288c9435bf4aab5612e0f5123866ff717897430fb33bc490aecf75cb29dd728760e55de2f26c520dce7a283f4afbc39c36e8ee83295ae60812fbea5f2b7a0c84ea65295cc38be106250e20cc2ede83bd0f2745a4320df729a33dbf9e939280f3c0a613adaf52c934fcd5ff3cda2e0494eb261f09550965285bb8855af83ecda8e1bd584e277ff6eadfd8d7d81a0066c309b12d9e08330d5d8faa5e28d725d459e258998ea799bb1b8915b58aee6c0056b05efcdc9c554b206218ddfdc68906124374035ee204d530a86a12cf7f047f304ebb900f8f366985bc7f303ebe6ee0802213009435dff9f9463ff03c140744bacf13ec58ef9145b1b743a75520140c5d2dba295fe92b2f7a0e05cba043d20639b065a8b39d56a51a2367d96bc63d59efdef418ef2eaddcaeda778346ab2b104d9fd2f89cde8aea905b94a48b800a85d9be9cdb4cce24dc7085f0ac1be541f38612554c542d0a6db071780e7ba2e265416bef547d532778edb017779b5a9f84006bd68579a624807b4c116bf22d3c7f70478fa8740a3b09402329ccf9cf52d4b1dfa5c299818a7805f7d08045a19f753a5def3f0f312a272bf38acbdce3fdf83a3ab17b64e407ce8f5b0ed678c4d78a44933f2105b6b6755a81ca95824ff3b0cc8493fe4cfd612c570e3b41eab2508073ba97e2d0fe587b33af966c61b00bb5d620d8872142e6ec3fb621186d400d5046dcd569d74346595c11b79112a64903c537a39e8b5b2d4b94fa767eff60ad97d8bf06fedfc726f9afffe8fb05996bb39a2ed730bd5e331be4457f35071635e1dbe018561bc399a19ca716e2e73fa175ad82a77b2e6096590f2226a1497d5e281c02a69b0b9ed8507091768a36e29253ede8beef17a927b817ad35e29178dd26e4e5c9c977d608224ef56450a6edf0c8b6592612c1dee0431c3c1d78e863cbd7bf2708f286157290ad0418acaf14355c84519393710d3843da69a3195f7f74e1b8d05e5f2ab7ad4ccb655a3bb0a6c96c756ab238760f1beec10307259dc10d9ca289dce225bce44c0c3fe6135bfb19238a34d835eb140bb5fade0dbf33979465983eba673ebafdf275456bac06d940640095d9b1f63c8e66cb74ffb5579bbc6b57393af28090205df40f0d45ee03dfedd6945f167e1630aca61f2017a97489ebe5bd3f6b668d582c622445ab491e6af0b0ffcc7145bd094b58e05e6c130b4c0e9367abf7545980006704fdc6e51b8397d881ab5a286233f273d87ad240743c8232e1f19e1db585d6829f307c8dcc992ac6c7ee569802b0987de3a9efd0b173ca87433472e0f6ab50c91cd8295e3a6741ea14735d2f907323022512944f917986c863b600e698761603f1d14e73eef3854d8f55c8055f382888ecc14c68ed1639a3f5032632b1185c01fac000e4e095cf6c584c6673a034fa43ecb02bc4eb6043717963d767153b27a97599eaa3218fcea049ba1f4b46897d5d742be460de6384f73fb6df68bca1d8f8860a71f54b4c78effb3777eff1bc876c2f40f7f84e8453987e773014d681645c3c7b81d7b52a501cce3460be5d7987e2833cb2eb566ea1dd8659a3b49c06556d107161025c0f1136370637527195150add73ed3792b36c56ef807b215f5be3e26cc3707bbc37d6b11a12befc40c16a1bf1c44792c3ae650adf1dfa1a31a45d3f94d6812f8237214d2ebe62d3775fba82efbe21a6bc52734480af8efc07f0e3c488af5976d1f5676f7742cdaa1e509dc349d472c75105d87b0758dd9e0d81871ded3d783a59b5cc92da07d50522f434981f73b864b0c854f6754ad27be640d1fe6c896f3ffa47e4a5050ce4e49f6905815c9ef95a281348aefe98e4d6f88354e2a7bfec8b2a3ad8ffa9782cee749b72dbffbb983302d7fef2bcdd5d24d44dc8b742429ce301621e8870b46244109c8c4259fbbf296c1ac29ec725732bac5feedd5e2f338c2bba7f37b7385fd03302d1ca6cc5d8fcceb7665a713996c772df8914081361f1177089f0a605fe81520bf1f302747cf4f5a81d83e075793c447d238e61ad1d55fdc45f64d74063b7138d0d4d8e00e99c7b80ca98e92612bc6387b6cf70b6a34d3a543b04ffead7e13ffa74cc3f5affdda3642849611560732fe4d32cf3c6623f508bdc90596df0d05e95ff6ab7dd1e39be143d1fd74ce8cbb083cd416048d1e2cc02a26979d27a62ff1952f710f0d8f0b97100585b15f37d6ab57cf7529b02d84dad50d804c69e340f110c41a3f418c99163eece02dfbaddf6d09d6dabf09088d8c244473f23510d59ce81a5777e07884354e387fc482b778f4845f1ec34aee0a93acb0c48e670b9b529ad5309329001efb0b1beee86a10c820bfb67c4eecb144937a75191e9198883fa4bb864f00ba0856b190877d61ad512c6683e7e945c221f55b4dbc85133c6b5dc5fb6cb149873c49fa1e5be7af4ffcd78ea1dceff1345ab8cc701af20789451888294336dee45f096ab1a857b1c374d13ecd19fbfd6bc058a15325c1001a1449a00d4f14b5935ddc586abbe53782284bbc5944138fca060ef616bde3a20602b6b06ad0f91ff8e454f573318f8ce8253d2dddba66a67bae610e0879b18b001cdf878b6dbc55263ee16186820d264abb5862ef98f2c2e728f6e06b8d5d7d4edd22b68bcd1646551412db8c", 0x1000, 0x4}, {&(0x7f0000001140)="cee3ed6be01c037f9f894d13cbae094c99290d58ed6f3e1e9b9a52dbd693d1a0c4512e5bdba4cc8a06b371b652597f4e7fb136d11cdfc382a643eff1dfdd64cb18dfaf1e31d12a3f389bcea2a3b719f18b23a3dbdb84cd1e48c013b8cd016a4b9ade5fea0c42e33d7592e1e5b37f29f3356e397fbd20d01e7383b35e7fb73daac9aa7a55ef5c68a97511083fc6e334f16ef560ca4cc54231e05b7c55c461e781862721e91470a3d2a6dfc120a9baf820953952ad578313b785a91e0f", 0xbc}, {&(0x7f0000001200)="2df29e28054472df0ea0e7cd89f1d36a6381b1f1e6a419cfb9beff6a1256c7d4e04b2efbab661c611b2c331b4f0e6c69d55dc96bc8dde05cea3856", 0x3b, 0xfffffffe}, {&(0x7f0000001240)="3f387329c0c749e50a132ddef07c77772d080550e8", 0x15}, {&(0x7f0000001280)="da3bddc7444b9ee704351cc8a495bb0492bbf5f2e2b96a33af1e96bf6355293fbb3f5ea90308f6987800c77bc57f2290c027a3662063befd1d851a973b79104f6e91e66f307ee3d6271e541f9c3f7b2d076009074eff2c5efcf1add43edf70835aebc3509a463792154ce6bf5bf93019ab355e460df830f273b691f349b7d9583a23ec42208fed666eb9c02227e2ee3871a8255e6bc12e8d8f101c804999fc852a8707104f83d177b1a85481c7a666de541f8cfb08d9ad9b23a28271259aa3edd0d524", 0xc3, 0x1}, {&(0x7f0000002440)="ce079f78626a7c683d278766664c54e34377f0749322fc34db6cbf8285c18363ecef0783c8c6ae5319c70ab36a02b6a8ed8613e7ce94856b2bd8853582b7dbe8a2c9fe91477f19007abf29cbcdac0e4ef1752b942dadc67ae3ecd24d46c8b1fdfbb975ee233f85105471858fa117b26c75aa3894630ffba044a6e6bfec0c10e93423e4d5a21ea85b00248ecc1935b2feb225c06191aa88e304d59254b29d154e4b2c23bd90a65577ca87d341892783f4294b8a74d8df37dd0688854694fe94166daae5d5db7c3316a7ba616850001e3cbb2a6ec1c14d227deb099ce1530f73429046737e083504e8a7d7", 0xea, 0xffffff80}, {&(0x7f0000002540)="51e034447bf5a47debb6dbea85b763948f03b71d9a660b32a088bbde4cb58926a0835491d8e1fa2d45286cfd9d3b9786aee6cf53b7ee23442ba3d0eca16911b0fa03f4a0f141cd4f2649115690bb1004bb38f7061c1cbf2a4e52719ae70ddb55581b5f642e766a90e72fc83a810cc43900978324444fb4b02ea3b2ea5415b1437e7d74f82693aaf8b961dffb527fbe6573538c721872afec10d492f9603afda7997c59862244702cb41d6bcfc756ba7c6524657dd5e78efc8862bcac0daf824cfc4be6b420ce8fcad901274b70eecbac049907da4427eb4443b184afada823f525490d1a85d839443f781f725c586aeaefc8ae2c843909c83f50012016ce25e4026320c738421d66561cd1bcefbb8b5baafd15938b89edd4705e6c6ddecf6e3cecc927a460bbf6f8980f427c017498775e112b7af044a229bbd539897ee6d5940bd96dd6640672f5bcdd4c256d6910778e4e23819cfa1b7aeb49ec93c8b655b4f18c0e1be16f61ca90683c3fa187853dc0d5849d8cb5ddd1dc3c120bb17181585bfdcb5f9003d13972b1069ed95b99790a2cd18ec0304714fa6f0acd8265678cfaf8bfb74b9da731a4ebbd34c25ecb4426b27cd4454c103ed9c26b5c44f2ebe82a2c9e4969a834d5c5395fb865839da58c825c3a25a55e30e28c6e9cf6a9832ebc00394c812be6d851549bb9d3917ec513cda40d3e13a45279f277d1981cb9fb9478abb301168ebc66559e4d4d3a8cb68b57daeb4f0c83a78dd911fa087a2f633be1da1c1b11d081d30575d917c3a449b820dfcf5fc12346f9b74cfda76f3559c5818e16848c25f6382e17c9cff265dec90fc115ae93ca797a910dacb799fa6258c3939f7640770730c734724b2b4be5b8a9a9a882eca102524b4689f52aad25c114675d7f86e223fa483ab04749f82f3f2a51824eb448fddd439da808eb0b937dffcdc3d08d806d5e0bc59b88936a23c5f1ffdbd30ac8f6841586a5419eb424608617ab4bb0dcf76da2fced69092cec7fad51e2981d5963797724b3cd17c71b23007b82cdcf9d1792c287c11cb40ff682487351be3017f6ade34dfcf3d03817426d53c752af40596fe5c13e2853981f1ffaf6819a9013161e2201acfccf868901710cfab9dfd65ca9b52582e9d32734fd42bc1e430755143358b522823bb9c993c63b65a7980563be182aa8551159252274ad12508d5565473a4e2e98f4d66741ead7f957ccf920964b4efd6742f4a4606e561e286415e8669d341241b96838aedf4e096378e53a1194c748fd8da10c36ec8f58a122af9df833d2b8971ddd0308ac01b589c0a904da29680b1119629ae2a08069bdeb086cb74b9f8e52de475cafd30de04a35d5585ec154272cc6dc74f9e424a3612881b8347faeae5fea6287e94b0de1e66a57cc147f16fd0f6690d248f48f3bb315e498879d8f0a27844109ef4100bfef6562bbe26a18105abe155fc9bf42991362ed1a1bdb420631133cc34bbe445f2acf66d8507dda67309a74120b5eab31a01810b8e817521b2b6c02e334368e3d4a2ae0a768ce1188b40000cc9737d379794cea7f5636eac2c40f0ded9dcd27af29df4abbbae6889b6825ab61bf1bd62605da7387faa845567896a630863a8a722ff9e6e8eddb764cd6e60321598eaeadcb87bfdef15d926eb733e7678dc40313e4c618e8cc0ffca1abfcfba712c9c2af48543a2396e8d520a50c7bbb5e753ff7aa35f23933ebbdeab99dc3ff05587c90cdec3728a3a54a4951daec9d886141a32a444b7c016e30f5f8571aa1b23bcd5b962f68340fb2271ee81bf90dd116b75fc9348343a34d39189d91a707fbee1cd4c9b75be6d1681059ae0ee275e6e06a8d49f05a5abc17c8ab105dffbb709ca1dd7d8332df507531a87ef8b5971386e079013d30a27a70d86fd03b63842ca8884d6e61208d8ab5ca0459ed17433aebfe2528baa55a65177412165d2e2de8934fc1403df668debb93846aefaeadd2cb168f05dc371c3d1f2b2e299fcaa3724359ce7a850d1941a2fdf8878fb096e794f45645d0eb7df71c06e880105809db3bd754a13a2b60231b3e959681643c92e9c3197c4274d16fe4e63c629ab1dc29b594685bbf1d59d668feffa422d572df5362e008b22649bd6bed48d7f3e6228a18b9e2c5d9e243afd327c713d55a234eb4f1571c3f34435d78be39384bb6dbae5180754ad1a03a8e43db8bf6e5ed57da09ce67099f0fbaa8268f3c208a83dc590b84cbb5cba98eda6ac6289672e5e9077d7e8848d550475e6672410f0ecafe8ca3c2948ee6d5b7400a7a00f3114452c52c6778b2d11d03f7a3c625c36e4ce0027c85128816d4c136a71ea626522179ec2cf37991a61547e6b922c31edf02ba0b7efdb6a8159420348f3b579b2c83ffd90181a3f85a2c75e8522bb2f8885c48cebb0e6da3305041b4e1decbf88efef6d602eb0133ebf6e546abb6a7ba41e32358680fc9f4efca6f7ab43a5ed308ca3816b427c46141a80b344cb4d5e6a8432f008d012d68c79118a74fdaa47bbe5b74e78d2c9ea9dec2ae53ac75d2c30e7d6cec106339ab5763ca2c33996346b3071451ed492aaa3d0ad3264b2e9529bae4f3b056999c5440c7b35ff26fe1170d270c3d9aaeae100147aafd0a60be7fb0139824d5d914b7b00960f986845b5c081c9b1444028bc8122979047a2318919b183f41e200312f0eb8ef6b07fd7434a5e433c16c0ace02e27091d9ff532e03260e91168d0971fdc48565bc1761a0bcd4771641ecf8fef4d8b80f900dfe0b92ffb0afa7624eef0519e7b72bb257849f0fcb9734cde03627498bb55928f4f52926bce78a26c42b3e2953d4a1d92f219768eeb6ee6ef815a52b0c078ea5e364fe9eab3c7b7082a1496e5be9ae32453b64963f2bc3f5e446fe53458834ad385bb5d4c736afbfe2cdd8d43ee5c992410b54274b0f56b02adf7c2028d2af1370fbfef79030cae555a5e9c896e13b254bd2b7ff2cc3471237a14e7a89841f4d3a47d5fd2fb124f67d7488f244f77e24d27494dad3624c152cf554ecf467d9b8c0bda713e4caed94b94d5c684cb7bddf051afd7ff3f348104a0ad03fc96015fb441effb7823d3e4638c09aac704bfc9f27e9a0e910150f941551464e0be4cc2e5870af86d203b9038087e5c98ff9190b0df21dd65276dc0fda01c0231cde5bf1d81af3ecf0cd14b9df684dfc0ac15c77ce1b474aa0a8137ea056d15470398dc39d4e019923fa34eb25a02b394b4096cafd7f90819e853efc147bfc76e3433cd9e43ec3c1df0de6d16287774e94f96a137830e9b4cb9e399ac015b9ceba85918039fb4d374ba47866791ecf468fa387ea714304c82fa6e5f1a9b7e792d3cb2deffa317afb2e2d5149409f69df9330d4f9f2b6053071173f509426534ba198a3f3f795831147c072b04fd84cb7b7219a721c0670ae2836b836bf638b673c7303eb742fd4e273a34ae1ac9e4a97f3295385dd5b2b27c4bfd8ecf449c1e2566d565d5da79ab48134eae8a8cd0250ae056a518ab579cc21e748bc8f48990e4393733c249e8e36169358dd400a0f781288e658660dc0d71fb23a1e88e24bbe8de3c0afa5d24255dbb7351df09e1a57b92c51ee64592278b064e62dea1978e449dc4d95d58f7e413046e88ceb1a94e32e0ef6935e844d8e5813dac6088ad00203ee225f08a157a59b55c5fec6fe3f0da25b5fc0a2d0643bee3a13707c1e4adb4e1e496b4f6fe2af05aa176893f325427b82fe732b5fc7b926f122368f3ff2ae68c7de0c55a88bcd6721d6211e6dfb92306a2ae4ff4bbdce219d719d90ccf8758a66340a6d1afd01dff21b0edca82c224877994ebd2c2e00a6bbb68183fa19d41c12768eccb2595bd9e8b656617d3b05d9d59228d1f1816e16ce4a17defcb9f7b787be2b0e31c95e970f7c0109ecb1e6c600737956211e81295ea3a3e7104ad9d827842b7665c542155df873de228ebb098a82e89946bb526aeb4b4b6f36ec253b865baa5f14e0f57c696767b4cfe308dd63e75a87f366d1b70c55c28dac3db0c28900ceae52703e5c6ccdba2f5586dbc36065f07b4febf84dafd465549752b047301ffc0ea46a873523263811a758961be4e846eae0f0803543a72ce38f690985b85ce2b1ef20a7c70cc384be068d87a8d3db563d3e5c566ba0bc9737d73bb517c1eb64e04c8309739a03eabb5f1387181251a64e71e22da7c4e4c5c5c33affed7667937f38275d2ef804f620ecdaac05f00c6844d1e3cb7218394b7cb4c8dc9d7cc889be5403c82e897e9aef2ab4701851f9da317fdff1944f463b659453ed59c9ebe7a82b04922474404f4131a83d022cac6186a18c8902ee4aecbc9f04e52960e7e08f33fa3d8655d4f41871869a2ba6d7e560d8e002ddc425f7af4dde269b519f0bf915297d6410e995cd9d255039a8e166db6e2a90f0968b559d7b1314be840f0bc3bda5c7af83cdc4036eee0cdd981f8456311c1aeb1c5010528a8ba2726979bdd6692121c61dd09346777298187c4cba67ff7e78baa2d3cb0f8f099175ca32e3f894e4f8ac309e829577e5de1176828e3544887243860a8009063a61a5617da0163021e7d8bf2c77b9eb06b682ebea93f247f24d4e502e9435129b4274e3fd6211cf9f4aec493a57b87846f947c861c7d57c2325669f260f66e8a03ed74c5c67f42f80bee4b05e22e491b69c65f218a913d72cab4ddaf5c44a5a06c45078ba7914e0fc6571b945ac6af8a5ddbbbc89b8d111a1110cd16cb2f1d2693d22e9d1e5172937771159c52ee36133a4270ecbf62d189653dc08b3d1a61777fe78bdd358cba0b140eee80a69782c371d9e416da8517f0f10b3face3cfbf0942a9238437e9836269984538304e0369269055ac401b03d3ad92e1ce05e4084283521184afa0dd73ddae4875c0321956acdf1dbbbad33e38d32a88096f31ae8272c0e317291329fccbd9569bf1c27629c56468ea8688107b1572b7feb0f0722f48c6fdece9b8212eeb95a12d5ec9ac39a44154f3a3aa16d260aeba9e0722ff32e5ebb332c4214598696bf6a8ae26e7970b85129f2aad9d75c2883c87624e61f91a312cc8698e23b345aa451d115b024060bb55de1fe4af7ab6f7eab04c16033d5435a8345470dd5d9d09a8b6b5cdca542818f1cc30364f71bcbc757952bc3364e8d6d12f6742232aabac71c58f4024e55792a251e5af9572ab42e38d5c6097c12607e8521fddc4cbd966587efe7ae818bc0d1691ea3577938035da94a3351be5c2ebba566be16daba9fe918b1aefc65d561dd037e266937682d716fddfa7e35aa285100e67e6bd8ab3cb57545996209f404c52db6c9c24fb9b8dae57a11a6b3040fbfc04b7ed1a3287874fb13328779bb0c08bb99359b008aa95c2ddee47ca454100e483232cf8566d23b8a2b76e914d240d43dc161879ccbc91ccaea94e9a9da161acec908dbfbbf35e7b03f2f0fecd6138ffc6078e0d48883aad2e607284c677beeb2bff2ceea4297b8b802bc3aa72c1c0bbc4b1bc430fa4070c19ad2447ce41aceeb84b833e4b6ff7b257a7abc79d3b37f86bc0a4b4edef895bce0a34f0913a5f2e49e323af6bd9b6d73e43fbeae5acd1d073ef30e7d5dc968d239e0b917bfada9a24f36cc8ef0495d23d82e948463843d869b94d6ac2d96a89de957c573634d1eb15b4ac71b7756167bd95527b5534869bfa938fe7ae85e3784b2408af633873d08ab4fffe9e83d0b5dea5b47381d0a6984c1fcbc0c7c5694555953b7afafdd2553b6a60dd8db6f31b930ff7ae67146ebcaf666165cb80e53d1", 0x1000, 0x8}, {&(0x7f0000001380)="47cff301535a6033dce611f6850021a4c2364b0f8d52eab4d3bf4652047945f15d98e28bce8ee39580bf81cac3907dca28ec6060f4f52e41992b32b06805e75038fe60744ac7baaafba4094bb5353543c1965d8f900c39c7f14960994d1de680051e9e4580a8824a66d291c85614c803d3e2", 0x72, 0x1}], 0x30040, &(0x7f00000035c0)={[{'\xf8+-}}$'}], [{@euid_eq={'euid', 0x3d, 0xee01}}]}) r4 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r4, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) poll(&(0x7f0000003600)=[{0xffffffffffffffff, 0x40}, {0xffffffffffffffff, 0x1080}, {0xffffffffffffffff, 0xb008}, {r0, 0x2}, {0xffffffffffffffff, 0x1000}, {r1, 0xb0c4}, {r3, 0x80}, {}, {r4, 0x2000}], 0x9, 0x5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/96, 0x60) 23:55:38 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) ioctl$sock_inet_tcp_SIOCOUTQ(r0, 0x5411, &(0x7f00000001c0)) 23:55:38 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$tipc(&(0x7f0000000080), r0) bind$netlink(r0, &(0x7f0000000380), 0xc) 23:55:38 executing program 2: r0 = syz_open_procfs(0x0, &(0x7f0000000200)='net/tcp6\x00') preadv(r0, &(0x7f0000000180)=[{&(0x7f0000000380)=""/155, 0x9b}], 0x1, 0x200000000000004, 0x0) 23:55:38 executing program 0: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mprotect(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x0) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) [ 332.511154][T12436] loop3: detected capacity change from 0 to 264192 23:55:38 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xb700, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) [ 332.661771][T12436] loop3: detected capacity change from 0 to 264192 23:55:39 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) connect$netlink(r0, &(0x7f0000000000), 0xc) syz_genetlink_get_family_id$SEG6(&(0x7f0000000080), r0) [ 332.962772][ T8462] Bluetooth: hci5: command 0x040f tx timeout 23:55:39 executing program 3: r0 = openat$binder_debug(0xffffff9c, &(0x7f0000000080)='/sys/kernel/debug/binder/state\x00', 0x0, 0x0) ioctl$TIOCGPTPEER(r0, 0x5441, 0xfffff001) open$dir(&(0x7f0000001040)='./file0\x00', 0x50000, 0x74) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/102400, 0x19000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/66, 0x42) 23:55:39 executing program 0: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_buf(r0, 0x6, 0xe, &(0x7f0000000000)="abc045eb56019bca5d7e58a9fb569dd8e693f9976a84fffcdac14fc1f5a27779c2c3a6306e4fc12eb2257be432070854ada3105771e3b5c8ff7e2e856ebbe3bf67146a1b68b728e7c07de4fbef40820dbded5e26bbd3f99feafa0be4691713e946beb54ec37022078639fd98b1d44c8c06ec1714e6409ca764031d5b57825725d8c01ba3553ae7915d1298e69b5d0f8cadb3dbc143cbabe77a0361be9b989ba5d888a4c231fb32d3ff63c239f32a61ed3b30bb49c39fcb9f88212be9d66d19537efc8b9cb7124aea1a8fe2ad80d9a3b1640e8dc50687062a", 0xd8) 23:55:39 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) getsockopt$netlink(r0, 0x10e, 0x3, &(0x7f0000000100)=""/225, &(0x7f0000000080)=0xe1) 23:55:39 executing program 2: accept4$alg(0xffffffffffffffff, 0x0, 0x0, 0xc0000) 23:55:39 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x30000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:39 executing program 0: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RVERSION(r0, 0x0, 0x41) 23:55:39 executing program 4: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, &(0x7f0000000000)=""/113) mlock2(&(0x7f0000ff9000/0x4000)=nil, 0x4000, 0x0) mremap(&(0x7f0000ffd000/0x1000)=nil, 0x1000, 0x3000, 0x3, &(0x7f0000edb000/0x3000)=nil) 23:55:39 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4110, 0x100e) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:40 executing program 5: munmap(&(0x7f0000ffe000/0x1000)=nil, 0x1000) mprotect(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x0) 23:55:40 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_CMD_GET_MAX_PORTS(r0, &(0x7f0000000140)={&(0x7f0000000040), 0xc, &(0x7f0000000100)={&(0x7f00000000c0)={0x1c, 0x0, 0x0, 0x0, 0x0, {}, [""]}, 0x50}}, 0x0) 23:55:40 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x34000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:40 executing program 0: mq_open(&(0x7f0000000000)='{:*}!*,-\x00', 0x0, 0x0, 0x0) 23:55:40 executing program 4: shmat(0x0, &(0x7f0000ffc000/0x4000)=nil, 0xc000) 23:55:40 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/90, 0x5a) 23:55:40 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x400300, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:40 executing program 5: syz_emit_ethernet(0x6a, &(0x7f0000000080)={@multicast, @random="514e60b93912", @val={@void, {0x8100, 0x4}}, {@ipv4={0x800, @gre={{0x5, 0x4, 0x0, 0x0, 0x58, 0x0, 0x0, 0x0, 0x2f, 0x0, @broadcast, @remote}}}}}, 0x0) 23:55:40 executing program 2: openat$zero(0xffffffffffffff9c, &(0x7f00000002c0), 0x90040, 0x0) 23:55:40 executing program 0: r0 = socket$netlink(0x10, 0x3, 0x0) r1 = fork() sendmsg$netlink(r0, &(0x7f00000003c0)={0x0, 0x0, 0x0, 0x0, &(0x7f0000000380)=[@cred={{0x1c, 0x1, 0x2, {r1}}}, @cred={{0x1c}}], 0x40}, 0x0) 23:55:40 executing program 4: munmap(&(0x7f0000fdc000/0x3000)=nil, 0x3000) mbind(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0, 0x0) [ 335.052497][ T8462] Bluetooth: hci5: command 0x0419 tx timeout 23:55:41 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x1000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:41 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4085, 0xfffffffffffffe32) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/185, 0xfffffffffffffd76) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:41 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0x0, &(0x7f0000001bc0)=ANY=[@ANYBLOB="180000000d"], 0x18}, 0x0) 23:55:41 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0x4a, &(0x7f0000001bc0)=[@rights={{0x0, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0x20}, 0x0) 23:55:41 executing program 4: syz_emit_ethernet(0x26, &(0x7f0000000000)={@random="fbac2a8d7427", @broadcast, @val={@void}, {@ipv4={0x800, @generic={{0x5, 0x4, 0x0, 0x0, 0x14, 0x0, 0x0, 0x0, 0xc, 0x0, @local, @loopback}}}}}, 0x0) 23:55:41 executing program 0: getsockopt$netlink(0xffffffffffffffff, 0x10e, 0x0, 0x0, &(0x7f0000005500)) getresuid(&(0x7f0000005600), &(0x7f0000005640), &(0x7f0000005680)) 23:55:42 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x2000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:42 executing program 2: mbind(&(0x7f0000fff000/0x1000)=nil, 0x1000, 0x0, &(0x7f0000000000), 0x8001, 0x0) 23:55:42 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) getpeername$netlink(r0, &(0x7f0000000080), &(0x7f00000000c0)=0xfffffffffffffe99) 23:55:42 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002440)=""/4105, 0x1009) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/248, 0xf8) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/23, 0x17) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000100), 0x0) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000200)=""/243, 0xfffffffffffffe30) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000300)=""/203, 0xcb) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) 23:55:42 executing program 0: mq_open(&(0x7f0000000140)='d\x89\v\xf7\x82\xd6\xce\xac\xfd\x1e~\xf2\xf2\x83\xbeK\x96Z\t\xe96S\x8d\xb0q9@\x16\x1a\x9c\xa4\xf6\xe0CnBG\xf9\x0f\xe4(\xe2\xc2\xe3\xd7Al\x83\x96\xe46\x1e\x05\xc4\xd1\x81\xd0X\xcf\x11zr{\xba\xcf\xa4\xe9\"z\xc8\x85\xb9\x10\xf9\x9c\xb9\xfe\xa9X\xa6\xd8\x9b[a\b\x9a\xe8K\xda\xb0_l!\xbf0\x92\x8f\x02\x1a[k\xe0{\x94\x04\xe0q\xca\xe3V\x04\x00\x00\x00\xc3\xe9\x03\xd5\xb3\x83\xdbEm\xe2-Ba?j]\\O\a\x8b}{\x8a\a\x8f\xad\x84\x92', 0x40, 0x0, &(0x7f0000000100)={0x3, 0x0, 0x66947abd}) 23:55:42 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000000d00)={0x0, 0x0, &(0x7f00000000c0)=[{0x0}, {&(0x7f0000000680)={0x10}, 0x10}], 0x2}, 0x0) 23:55:42 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x3000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:42 executing program 2: syz_genetlink_get_family_id$SEG6(&(0x7f0000000240), 0xffffffffffffffff) msync(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0) 23:55:42 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) getsockopt$netlink(r0, 0x10e, 0x0, 0x0, &(0x7f00000000c0)=0xffffffffffffff8c) 23:55:43 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) connect$netlink(r0, &(0x7f0000000000)=@proc={0x10, 0x0, 0x25dfdbfd}, 0xc) 23:55:43 executing program 4: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, &(0x7f0000000000)=""/113) mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x4000, 0x3, &(0x7f0000f2c000/0x4000)=nil) mlock2(&(0x7f0000ff9000/0x4000)=nil, 0x4000, 0x0) mremap(&(0x7f0000ffd000/0x1000)=nil, 0x1000, 0x3000, 0x3, &(0x7f0000edb000/0x3000)=nil) 23:55:43 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/102400, 0x19000) 23:55:43 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x4000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:43 executing program 2: memfd_create(&(0x7f0000000000)='.-{\x00', 0x4) 23:55:43 executing program 5: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) 23:55:43 executing program 0: r0 = socket(0x2, 0x2, 0x0) sendmsg$TIPC_CMD_SET_NETID(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={0x0}}, 0x0) syz_genetlink_get_family_id$wireguard(&(0x7f0000000100), r0) 23:55:43 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/128, 0x80) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:43 executing program 4: shmget$private(0x0, 0x1000, 0x90c67b085959dceb, &(0x7f0000ffc000/0x1000)=nil) 23:55:43 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x5000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:44 executing program 2: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'bridge0\x00', 0x0}) r3 = socket$netlink(0x10, 0x3, 0x0) r4 = socket(0x10, 0x803, 0x0) sendmsg$nl_route(r4, &(0x7f0000000400)={0x0, 0x0, &(0x7f00000002c0)={0x0}}, 0x0) getsockname$packet(r4, &(0x7f0000000100)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @broadcast}, &(0x7f0000000140)=0x14) sendmsg$nl_route(r3, &(0x7f0000000040)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000080)=ANY=[@ANYBLOB="480000001000050700"/20, @ANYRES32=r5, @ANYBLOB="0000000000000000280012000c00010076657468"], 0x48}}, 0x0) sendmsg$nl_route(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000000580)={&(0x7f0000000080)=@newlink={0x44, 0x10, 0x403, 0x0, 0x0, {}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @ipvlan={{0xb}, {0x4}}}, @IFLA_LINK={0x8, 0x5, r5}, @IFLA_MASTER={0x8, 0xa, r2}]}, 0x44}}, 0x0) 23:55:44 executing program 5: r0 = memfd_create(&(0x7f0000000000)='[^\'&/-\xc2#+\x00', 0x5) mmap(&(0x7f0000fdb000/0x3000)=nil, 0x3000, 0x0, 0x10, r0, 0x0) 23:55:44 executing program 0: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) mmap(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x4, 0x10, r0, 0x0) 23:55:44 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f0000000200)='reno\x00', 0x5) 23:55:44 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x6000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) [ 338.433097][T12583] netlink: 24 bytes leftover after parsing attributes in process `syz-executor.2'. 23:55:44 executing program 3: memfd_create(&(0x7f0000001000)='-\x00', 0x4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) [ 338.508668][T12590] bridge0: port 3(ipvlan2) entered blocking state [ 338.515509][T12590] bridge0: port 3(ipvlan2) entered disabled state 23:55:44 executing program 5: r0 = socket$inet_tcp(0x2, 0x1, 0x0) mmap(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x0, 0x12, r0, 0x0) 23:55:44 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$WG_CMD_GET_DEVICE(r0, &(0x7f0000000100)={&(0x7f0000000040), 0xffffffb4, &(0x7f00000000c0)={&(0x7f00000001c0)={0x14}, 0x14}}, 0x0) 23:55:45 executing program 2: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) mmap$perf(&(0x7f0000ff1000/0xf000)=nil, 0xf000, 0x300000d, 0x110051, r0, 0x0) 23:55:45 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x7000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:45 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = getpid() sendmsg$netlink(r0, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)=[@cred={{0x1c, 0x1, 0x2, {r1}}}], 0x20}, 0x0) 23:55:45 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/133, 0x85) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/209, 0xd1) 23:55:45 executing program 5: mlock2(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x1) mlock(&(0x7f0000ffb000/0x2000)=nil, 0x2000) 23:55:45 executing program 0: pkey_mprotect(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x0, 0xffffffffffffffff) mprotect(&(0x7f0000ffa000/0x1000)=nil, 0x1000, 0x0) 23:55:45 executing program 2: prctl$PR_SET_MM_MAP(0x23, 0xe, &(0x7f0000000240)={&(0x7f0000c41000/0x4000)=nil, &(0x7f0000ffe000/0x1000)=nil, &(0x7f0000ffd000/0x2000)=nil, &(0x7f0000ffb000/0x2000)=nil, &(0x7f0000400000/0xc00000)=nil, &(0x7f0000ffb000/0x1000)=nil, &(0x7f0000ffd000/0x1000)=nil, &(0x7f0000ffc000/0x2000)=nil, &(0x7f0000ffc000/0x1000)=nil, &(0x7f0000ffc000/0x3000)=nil, &(0x7f0000fff000/0x1000)=nil, 0x0}, 0x68) 23:55:45 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x8000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:45 executing program 4: 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) perf_event_open(&(0x7f0000000040)={0x2, 0x80, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0xc422, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) 23:55:45 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/155, 0x9b) 23:55:46 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_NL_NODE_GET(r0, &(0x7f0000001380)={&(0x7f0000000000)={0x10, 0x0, 0x0, 0x4000}, 0xc, &(0x7f0000001340)={&(0x7f0000000040)={0xec4, 0x0, 0x0, 0x0, 0x0, {}, [@TIPC_NLA_NODE={0x9c, 0x6, 0x0, 0x1, [@TIPC_NLA_NODE_UP={0x4}, @TIPC_NLA_NODE_KEY={0x49, 0x4, {'gcm(aes)\x00', 0x21, "6347f61953cac01b751ab794f3c531639db6b5268ca8e1612cf24c6148f5b5bc65"}}, @TIPC_NLA_NODE_KEY={0x3d, 0x4, {'gcm(aes)\x00', 0x15, "bf23172b4540acf679fe58b77dabe1eaa6e08e1bf1"}}, @TIPC_NLA_NODE_ADDR={0x8}]}, @TIPC_NLA_SOCK={0xc, 0x2, 0x0, 0x1, [@TIPC_NLA_SOCK_REF={0x8}]}, @TIPC_NLA_BEARER={0xec, 0x1, 0x0, 0x1, [@TIPC_NLA_BEARER_NAME={0xe, 0x1, @l2={'eth', 0x3a, 'vlan0\x00'}}, @TIPC_NLA_BEARER_DOMAIN={0x8}, @TIPC_NLA_BEARER_UDP_OPTS={0x44, 0x4, {{0x20, 0x1, @in6={0xa, 0x0, 0x0, @rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02'}}, {0x20, 0x2, @in6={0xa, 0x0, 0x0, @private1}}}}, @TIPC_NLA_BEARER_DOMAIN={0x8}, @TIPC_NLA_BEARER_UDP_OPTS={0x38, 0x4, {{0x20, 0x1, @in6={0xa, 0x0, 0x0, @ipv4={'\x00', '\xff\xff', @broadcast}}}, {0x14, 0x2, @in={0x2, 0x0, @multicast1}}}}, @TIPC_NLA_BEARER_UDP_OPTS={0x2c, 0x4, {{0x14, 0x1, @in={0x2, 0x0, @loopback}}, {0x14, 0x2, @in={0x2, 0x0, @multicast1}}}}, @TIPC_NLA_BEARER_DOMAIN={0x8}, @TIPC_NLA_BEARER_NAME={0x10, 0x1, @l2={'eth', 0x3a, 'macsec0\x00'}}, @TIPC_NLA_BEARER_DOMAIN={0x8}]}, @TIPC_NLA_NET={0x1c, 0x7, 0x0, 0x1, [@TIPC_NLA_NET_NODEID_W1={0xc}, @TIPC_NLA_NET_NODEID={0xc}]}, @TIPC_NLA_LINK={0x68, 0x4, 0x0, 0x1, [@TIPC_NLA_LINK_PROP={0x2c, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_WIN={0x8}, @TIPC_NLA_PROP_WIN={0x8}, @TIPC_NLA_PROP_MTU={0x8}, @TIPC_NLA_PROP_PRIO={0x8}, @TIPC_NLA_PROP_TOL={0x8}]}, @TIPC_NLA_LINK_PROP={0xc, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_MTU={0x8}]}, @TIPC_NLA_LINK_PROP={0x2c, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_MTU={0x8}, @TIPC_NLA_PROP_PRIO={0x8}, @TIPC_NLA_PROP_MTU={0x8, 0x4, 0x40}, @TIPC_NLA_PROP_PRIO={0x8}, @TIPC_NLA_PROP_MTU={0x8}]}]}, @TIPC_NLA_LINK={0x10, 0x4, 0x0, 0x1, [@TIPC_NLA_LINK_PROP={0xc, 0x7, 0x0, 0x1, [@TIPC_NLA_PROP_MTU={0x8}]}]}, @TIPC_NLA_SOCK={0x18, 0x2, 0x0, 0x1, [@TIPC_NLA_SOCK_HAS_PUBL={0x4}, @TIPC_NLA_SOCK_ADDR={0x8}, @TIPC_NLA_SOCK_REF={0x8}]}, @TIPC_NLA_NET={0x3c, 0x7, 0x0, 0x1, [@TIPC_NLA_NET_NODEID_W1={0xc}, @TIPC_NLA_NET_NODEID={0xc}, @TIPC_NLA_NET_NODEID={0xc}, @TIPC_NLA_NET_ADDR={0x8}, @TIPC_NLA_NET_NODEID_W1={0xc}]}, @TIPC_NLA_NODE={0xc30, 0x6, 0x0, 0x1, [@TIPC_NLA_NODE_UP={0x4}, @TIPC_NLA_NODE_ADDR={0x8}, @TIPC_NLA_NODE_ID={0xc1e, 0x3, "7b298cedec1c8721b5454a3fc78dc1e47c33788b956082e4432a3d784b9777e1dc1feab39c06cbf1473a45ef073679493470c99a2d8bd6981283d2e5b09b6c2cfb9f09706ef60d8178dcdca55a1f586c505af3ab478f4b769e82b144911888999cd6fc7c6183da69188a4ea466657452acc1c9ae69d41895f7e885ef2332acb1c69f318ab29c869884e301e3d2d2b7a307daff2119fbcb81f3a2928e3f2c5fe36a61301ebdacdb3df67eefffc53ff25ec650165960a495cc743ba506d7b7a6d9444382b61da74c6ee51d73d55b8c9d03f8501cdeb94ae17cd41443f7b13de09fcef712932b901e944328c0eb7db80134ae62bae1a6d71f72f42628126c7384097c92a32455e23ff0eecb4d23b7ace7cf3e44ce2a5e6f3f8d5beb0c75a6dab3f3fd7ac67ee61925d16c66cf827743e4eb463d7d00c0331265f2a1b2e813b53bc53f64bdfa12e688c68f9e107dc768e00400a59187b5c4352ce869f98e689ae49a3600fe16f72fac6e9bf9e2a7285bfd61ed68a82c98bc65266a0664775d575db0ffbbdd6421bbf0821412d805e63576b6c772dcc4fa7d5f3ce8815dbf0e4dd7b04ebd6cd107726578da7bac3f8104c476bcce976db97aceec8d412dd7c836010d47e79ef9d026b0579145b6960f5fe405c070cf4ede779377efdf1e63f50cd2b2753f6e0aa885d6a3905c15ed2fe6cca51de7227ecdddff3ad593ffd10f914a8272876f7b9c22d819e572c2ee01b44a4e01d69689bb2e99ffeeb10741efed98a9c815079e97f0187bf670022bf8e6f98fa3e2ca83a930276b001c91514500ff0824ffc2d820c1f31f6d1f970c0981c7f7ab0d8532849751709159b257f01c9e5c2d8c937da33ce6ea7233a9c01b2a7e60ceae8b93767914f098d8722e3fa03dd980d81c453264aead60aff56cadd7a09220c8550aeff7530206e6f789a053617255d0e34abb08fed718c427b7df66ba280b4268b46153e903fa8cc03d58099d614cb94bf9f094e3e777dce6933c3c89adcf109607cde9bba8401634dac8bb10aba4f1fa82eb6410175bf1c2f036acafda8c746088067407c94623eb541a8fc936074e06df2ba91af5b8c593c51002f011d389e0cf1f32ef4c548a789aa5a78d8f91848cb431089d7e1d618662ce8df091f9e4f4c0e9786ced8f3a68b369d886c887b576f513c8c46a93c0080e094734ad6bdfe169b03f33e846953104808d8b44894e31db15c388403cde7d6903d7ebdca1fbb7f1ece2c941d57ea84f9bcf1d7cdb952d71ad9c4b8156685be971238b8317fed8dd7845caa14f13970822e89ce0f7ddc268f177bee3a11763bef281576118e657980ff035e64012529052c301f02809585fe30ec184fddd33e999556b8bcaf4e5e3b556ba4deddc5343ea9aec8968ac75b7c2bd6ccfba181b1b0f3e71d71e80b5f5ff4aa1f899b8b0d03d0d5dfe97f94567fb6bece245f3626c59df0586059ebbbf59f996a737e69c5bfc111037f87182b1f5d08980920b2088f98aac4eff60d26b2cc47f8d5d3bc57c6fa13f66d068ef9d46bf1cfd49a4289799357ea4afaa3444d213029afe939118a054caa735da5a7d8c8859185a088332b8cbdb8c1a20d8ed09aec276f143206c579c80b4f2a89a4ee1055ec0b2d8aaa136945fc05fa518d7a2d5074b9ee8b9a1e9702cb083d9d6f99e6c6537c0e61fa18ae9e047ed7d0f470043e84f3d546e53da91de84edac64fbd5f5daa719e9d26ebad024d09fb49dced9f8ff5a5c700b7389d72feb63e63a184863041afde348011a8b2d0c52beb764af16c072b6b1a2bc6f70b1c7a801cb70fdfe21b9bcc0709037f7356840ffada7bbe46fe76e0630bb76f640523f5097ac533de10d831d79d99785bfe0488e794f9ab178ca97c7e5e8430936513ffae3bed03cdcdb7e1f2cfb281f7bccda31f1f5114e89622034f94227626b85f2b5895fedec09bb609158a21a90659d3015aa79af7bd5aea3d3a229da465a6c11a7d50af5a72cdfd878a6eff9482d7a99e76984c74ef2edfb1a8b147abc5de676d69a2ca067409b0ba6f6c3e81e1e978f64438739d255abcdf1ea9f2e152e69951f58240a8883242ebbbd722bc66d7f80a59d51de9f37b026c2396e3dd74d0065cc264a6b247a56c3b7597c96155a47e93cc3b25e1204532d95ec6ae9b76c24ea1427a8dc6efa62891970943dc7d2caae009ada6132e562cc0f50c25438e85e72985f91b57c696cc4a2efca11e1820a4725344d030d8bcfe9d6616473830e278dbd463c0d068132e2b2e3f527b5e154d2f5efe308713576942ff06908861d12c52099ed61fe30cf5583a052212de97024ae74e359839441a1fded54b42bc75e0fb2c7a04939fb67b9c45b9bb487945acde41201cf7535891b9df4159039aefee38984b044e44b3c9223b22549f8610c91aa1a6d3fa3023e2e9dbf9717b3c55372eae1cf0f92ebb0b45024a26a0aa2488a6e0c62d3ccff75684f27140eac7b60271af47f563c60e989d1646f039c98ada57da3c920726f183e7c5843edc3c5dd21c036621fc44ac5394d367754cafe59a1fa5b27ecc5bd37b6f86d4b251b4bc07613fb6fd03bdaff4b9e7e0a93780987131067398ab4d7c5dccf1578a140cde6f1813e7cb1072888b231d77cf0a09060e64422f653cd7937e4856f5266d97d89569d65ede2292bf23604bf27613eef5d1273c754d1d0e59fd5863e1749617f28c1bb5bc8213a91185f1bd684da730b0fed89026152c203922f9fad9fa5ead8d354b1a2e23eab50b3a947981d340b058830d57f96fecd466b718c65d988b57d53c21b0a085a495e62d0863fd9277d50f6691d64914ae5418e83567afee9c477b4ef5f78020affacd8ed0e3e215c3c261548919fbbce492a5b0314e5de2c60830e8340aa4430600d7bbe354041620b5b554164476f34746f17b624ec658c82339479fa1f66b06fe9ebf2736a9912939bcc651464d90e07ec00c2850dbce2e1786e54395bd25d040b9a7d364cab8dfc88b623b5339c8fb65b561e9f9cc1335cc57b750dedfe644d2f03515519ac1938a42b89f078c61fc78bf70287c713604a9d62f672057dd13a3daa41c45150f8cb6cc64ef5095ed6ac0a7aefc0804a08e99a98cd34c60f68d3f4e6451295d555863faac94394aa537322e4e299b1a1a3511dcaa8c9c2e1942f9d9cef12de87067125a10237fe638cef8a005fbddbf305efdb60a930bdaeca464dfa53dff22e857d1f4498026047773f89c875e123ce5a0a3b0a9ecc41e3a01985bd7eb6392ed68d6d14b99eade9e7329f3b187dcc58f4285fcd3f233357011f242467dbc6576f2fcbbe02865cf232b0e4523b1a8879458df4c3e75994ba166ef175d126f410597a8f1eecf8027b44cd1c4917d67a3a6f53daa97759175360d97b94a45516f08b32b66776d134dac32284e6fbbfa03fc865f81a3e85604802f9c6d79680925b8c69d1b0725dab8f32a8001a79573df390c5b25d478c72ba66ff34bdacc73c70eb994981ddef2a19dde10bd96bb464fbafd21095472e3076d47e6658e9a2c113e092af303e701d93b279ce72232d2927e88699e75d5dff1f9e1d07e91c3642b56611ffc8eaab920f70cdd97c9a017f98185e5173f63ae49ef3c8f3330f0eff58da5f936bdf1e6240b1e785f649e48fc2e353e12f2fc4a7083345956fc25757f4d5451ec8eba4b47e3c42aea87be2dab01ce6e3bb1d7a8866f2df88d260793ce5b66ca33c548615620340caf48ab7042170dc89125e963c33db5249db7e5717dd45caa81c0dbfc84cc7d0f032b890baa373bfc62f619538e549ad0e77596658b2d263315d2fa35f6f50effa895ca33c743c05d825e9ce3009933d427e51c602cbef187cd5127b290170c155535c49896fcdb014bf8ecbee8f670de55c2e85617e3353fe9a86c0f5503e607668e0b0b6225d7df4a5a243edefceef231036747d21f3554ce7dd66bcd6cba898f7a99c804a9e01aaccfdb0bbfbe365b31f8e2fd6d41f58081ab78be5381215acd5cdc1b0a2a9f72a3b35a1fff66f4e837508276b963309f5e3662e2833f7bd46f52d9e4b5de3b1a6c8f9a8527ec48a3d02886d10602e3b2b7cbd7ec200a57ca7fdb4844897f0f17642089669b57c89fe49aac4e5daafddf143b10c8023667a8e61594ab00c05a597e83f4116ca6cecf4580d7fe829d33e7ec9b6be886b952eff4991e2e09e40c62618b7c35d75de4165ccaf51b395efcb23c51dec4975d7b0865954cc00711ec9c2f32e2ace89daeb56f9a8733a15a183178a91c3a5b2b1ecf3e11ccec429e32b6d3d1fe709f84a05380ce8720b428b2f2d67034dd22097cf0a9d6774670ee6a5b29374502122d5006545bee60d6be4e88288bc27ca98ddee3e1ed4f3"}]}, @TIPC_NLA_NET={0x4}]}, 0xec4}}, 0x0) 23:55:46 executing program 5: shmat(0x0, &(0x7f0000ffd000/0x2000)=nil, 0x4000) munmap(&(0x7f0000ffd000/0x3000)=nil, 0x3000) 23:55:46 executing program 2: mlock2(&(0x7f0000ffc000/0x3000)=nil, 0x3000, 0x0) mremap(&(0x7f0000ffe000/0x1000)=nil, 0x1000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:55:46 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x9000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:46 executing program 4: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, &(0x7f0000000000)=""/113) munmap(&(0x7f0000c23000/0x2000)=nil, 0x2000) mremap(&(0x7f0000c2b000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:55:46 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/10, 0xa) 23:55:46 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_CMD_RESET_LINK_STATS(r0, &(0x7f0000000480)={&(0x7f00000003c0), 0x9, &(0x7f0000000440)={&(0x7f0000000400)={0x28, 0x0, 0x0, 0x0, 0x0, {{}, {}, {0xc, 0x14, 'syz0\x00'}}, ["", "", "", "", "", "", "", ""]}, 0x28}}, 0x0) 23:55:46 executing program 2: syz_emit_ethernet(0x56, &(0x7f0000000000)={@remote, @link_local, @void, {@canfd={0xd, {{}, 0x0, 0x0, 0x0, 0x0, "f90babc5c1cdad37712401051bfa99424822b6eb9911ffc6793a2af1901ff725f07e872a974a600a214bb7b237fd19cf744e054de4c06fc5a166e11c66b80e3b"}}}}, 0x0) 23:55:46 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) setsockopt$netlink_NETLINK_PKTINFO(r0, 0x10e, 0x3, &(0x7f0000000040)=0x80, 0x4) 23:55:46 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xf000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:47 executing program 4: seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000180)={0x1, &(0x7f0000000040)=[{0x2, 0x0, 0x0, 0xe55}]}) 23:55:47 executing program 0: perf_event_open(&(0x7f0000000040)={0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5eac}, 0x0, 0x0, 0xffffffffffffffff, 0x0) 23:55:47 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/17, 0x11) 23:55:47 executing program 2: syz_emit_ethernet(0x6a, &(0x7f0000000080)={@multicast, @random="514e60b93912", @val={@void}, {@ipv4={0x800, @gre={{0x5, 0x4, 0x0, 0x0, 0x58, 0x0, 0x0, 0x0, 0x2f, 0x0, @broadcast, @remote}}}}}, 0x0) 23:55:47 executing program 5: munmap(&(0x7f0000c00000/0x400000)=nil, 0x400000) mremap(&(0x7f0000efb000/0x1000)=nil, 0x1000, 0x4000, 0x0, &(0x7f0000ffb000/0x4000)=nil) 23:55:47 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x60000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:47 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_TCP_REPAIR(r0, 0x6, 0x13, &(0x7f0000000340), 0x4) 23:55:48 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4085, 0xff5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:48 executing program 0: perf_event_open(&(0x7f0000000280)={0x2, 0x80, 0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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_procfs(0x0, &(0x7f0000000200)='net/tcp6\x00') preadv(r0, &(0x7f0000000180)=[{&(0x7f0000000380)=""/155, 0x9b}], 0x1, 0x0, 0x0) 23:55:48 executing program 2: syz_emit_ethernet(0x6a, &(0x7f0000000080)={@multicast, @random="514e60b93912", @val={@void}, {@ipv4={0x800, @gre={{0x5, 0x4, 0x0, 0x0, 0x58, 0x0, 0x0, 0x0, 0x2f, 0x0, @broadcast, @remote}}}}}, 0x0) 23:55:48 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x9effffff, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:48 executing program 5: socketpair(0x1, 0x3, 0x0, &(0x7f0000000140)={0xffffffffffffffff, 0xffffffffffffffff}) ioctl$sock_inet_tcp_SIOCOUTQ(r0, 0x5411, &(0x7f00000002c0)) 23:55:48 executing program 4: mq_open(&(0x7f0000000000)='{:*}!*,-\x00', 0x0, 0x0, &(0x7f0000000040)) 23:55:48 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/92, 0x5c) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/183, 0xb7) 23:55:48 executing program 0: r0 = socket$netlink(0x10, 0x3, 0x0) bind$netlink(r0, &(0x7f0000000040)={0x10, 0x0, 0x0, 0x10}, 0xc) 23:55:48 executing program 2: syz_emit_ethernet(0x6a, &(0x7f0000000080)={@multicast, @random="514e60b93912", @val={@void}, {@ipv4={0x800, @gre={{0x5, 0x4, 0x0, 0x0, 0x58, 0x0, 0x0, 0x0, 0x2f, 0x0, @broadcast, @remote}}}}}, 0x0) 23:55:48 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xb7000000, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:48 executing program 5: perf_event_open(&(0x7f0000000280)={0x2, 0x80, 0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) mmap(&(0x7f0000000000/0xfbe000)=nil, 0xfbe000, 0x2, 0x31, 0xffffffffffffffff, 0x0) openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mbind(&(0x7f0000000000/0x600000)=nil, 0x600000, 0x8003, &(0x7f0000000000)=0x9, 0x8, 0x0) sendmsg$unix(0xffffffffffffffff, 0x0, 0x0) sendmsg$TIPC_CMD_GET_BEARER_NAMES(0xffffffffffffffff, 0x0, 0x1) 23:55:49 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_buf(r0, 0x6, 0x1f, &(0x7f0000000000)="d0", 0x1) 23:55:49 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/195, 0xc3) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/2, 0x2) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/77, 0x4d) 23:55:49 executing program 0: pipe2$9p(&(0x7f0000000040), 0x0) mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) mlock(&(0x7f0000fdd000/0x1000)=nil, 0x1000) 23:55:49 executing program 2: syz_emit_ethernet(0x6a, &(0x7f0000000080)={@multicast, @random="514e60b93912", @val={@void}, {@ipv4={0x800, @gre={{0x5, 0x4, 0x0, 0x0, 0x58, 0x0, 0x0, 0x0, 0x2f, 0x0, @broadcast, @remote}}}}}, 0x0) 23:55:49 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xf0ffffff, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:49 executing program 0: mlock(&(0x7f0000d2b000/0x1000)=nil, 0x1000) mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:55:49 executing program 5: syz_emit_ethernet(0x2c, &(0x7f0000000000)={@broadcast, @multicast, @void, {@ipx={0x8137, {0xffff, 0x1e, 0x0, 0x0, {@random, @random="815ca8f3cc95"}, {@broadcast, @current}}}}}, 0x0) 23:55:49 executing program 4: mlock2(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0) mincore(&(0x7f0000ffb000/0x4000)=nil, 0x4000, &(0x7f0000000000)=""/80) 23:55:50 executing program 2: r0 = socket$inet6_tcp(0xa, 0x1, 0x0) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e22}, 0x1c) listen(r0, 0x0) syz_emit_ethernet(0x4a, &(0x7f0000000180)={@local, @link_local, @void, {@ipv6={0x86dd, @tcp={0x0, 0x6, "0a3ff2", 0x14, 0x6, 0x0, @remote, @local, {[], {{0x0, 0x4e22, 0x41424344, 0x41424344, 0x0, 0x0, 0x5}}}}}}}, 0x0) 23:55:50 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xffffff7f, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:50 executing program 3: sendmsg$TIPC_CMD_SET_NODE_ADDR(0xffffffffffffffff, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, 0x0, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) r2 = socket$nl_generic(0x10, 0x3, 0x10) r3 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r2, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r3, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) r4 = socket$nl_generic(0x10, 0x3, 0x10) r5 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r4, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r5, 0xc15, 0x0, 0x0, {{}, {}, {0x8, 0x11, 0x7f}}}, 0x24}}, 0x0) r6 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r6, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) r7 = syz_mount_image$qnx4(&(0x7f000001e2c0), &(0x7f000001e300)='./file0\x00', 0x7, 0x7, &(0x7f000001f640)=[{&(0x7f000001e340)="0149f3518f559d97d64f4dc44f2385462542a7151705334405b26ab44ea5ab987b8b720905d3ff5d60a8c5e52e50ac8bb90e3ebccdc52988d20a0cb6ecaf2e4d96189f35137de14dc76bcbfde06430f6431dbab30bc4840f1681653316a9025de849b7e0505cb8973e4bf10f742febb448414d8aea057e74ca3622e0f7cb1e0060eec93f7675c50178425a65216674aecb6c8057d9bfb2160482456232d9b25c2f4338a21de8ae5b12205b3c6718c72467fe3d58cb53bc088f3389f5ee5575c5ee3f19ca40a665c062425de89b20ceb7a279911287477ef5a368e8c8fcdaf15ae90900c3c832c777f8868a02deddb90e9c97f3c3a3c55c538d76ae02025d4ffc569ba2e7e89126da1464d8db65623dddc3df25ba4f0fade7534e53198554e4c2e7461a43bcd89a529a0652aefb5125929f1d30708575d68209802dd9b06df4e95976c3267cd65eadb14f5f5ddd243e06f44ed92a03e4cc4340b1855d0ddcb62d6f2e4114efcc5a8d1ddaee550abc07549e1988d421e4861609ad9a460fe54d1e2983e258de5cb828277aa7589065c2e5ece5327018a040b3e2120ed1bb117a6283bcea34e1f8da3ca97ad77ba432edd90c7a61cff090e2d595278247457dade0421c46dd55079697adce9005ed59616604f8e2366ccfd928de27acc24362c37f2dce9e2029b31e23dba832a5e921721b32d52bc15b86c519aa17cbb10871380fc9199b7716034eea0451f9a588e006991189417ecd546d66ddf77f05004bb7b8a6d674ff310cf4f144ba92dfd790cf24b40923d39024e92d55f6d9c8f1ef3fe3afd7306a7f7c5cdbe3b5ab095f95bb41f6c83964c70fb691b65d4ba4009ff5404fe79f697fa07ba3938d76d5819323dc6f1644581923105f3f878f3cfab55483df10228da82042e7becf93c897bc71062c683faf1e08e58b3234319308beb358fe8b1a46eefaed081fae10ee36ec08bd7f3d70f5f86608f0be0eadee25a790d522c45ab12ba82820218637f6773031f5228fa731e2d47b61cecfaf88d00c5ac154ce3758ab31d1526a398ccd29b7108fecad2578dfdbca22a6200a657e9b7da25e6a7849a909e1d83a055433cad095a00e077166cad30cde1d8d46e7fafea6f5d92a5482253214cfa93ae01b25ce02593238e8fb47b001985a2c838eb9c9ebb92eb4cceb06579ce1b3e0f9b7a6abfedb7aa29ad430dccfea5291b7ae66ae9112dd99b021f6eee9cbf68e38b1073e7db91f74a2ee782c88cef2e6a6fb2965550b238a590031b375ab6692358a8e2048f3a01081a8037ea34b67eba843368ba5ca7def8ebc867cb596da92910eb747c4a7a6d8b61e2aba3d2db9a50b1dcbec1a77ecc1515fc253f325cbad64b8aa2cfc2eefaa987c96b2be31cebbcc46dcc44e5a7904e8868d9bfca3dc75283fed92f246a6863f50f8ece5b365780b48dea31a934cd6e20770b918739c7e9caf976b748a1cbf3a68da8cdf7700bd4d9ab077b0d8bd54e5c76d616bb9acae9234415c64aaedbb61c051fe5bf3f655fd237de94e3028d05812af66d3dc408cd16db02ce41d8e5a762872cc7146f97f910129dfbbc8f4151ab1d77fc7d33b4b37408e6d48a29b1f177d766355c6c2769438fcbef6248f9374d4fa6c1dcc8984c67e8cf98a0a14465eea251ae1cba23f5a277acd03f7cad17a0024605a870013f508d9f2cd9c93b65456cb3c0e6bf4263791aead87138f464136bea65ed1bb2f7a8cb0eec88a8d301a6b83d2b233ad5ae95e6effb0dc3f1138419dd8997d01628464024dcb7bc2b8b3068e73262fd70e0930fea1eaf1d2c1cc2d4be6f4046175674135e7619ad1bccbda6d79aad7814a6cc1562841974e7770651102ac01fd37b4c4cae26dd2686486c89be9c339895c3762409b1eb87925130cf22251c52d832227da8e783ade4e4938ee79887afd4af24f082ece428806a31f3253a4ac4b4eb25bd1bf7fc9cf667ce584e35de5618132323e346221cdf0a13db08a32fe01a291b907ff18285c788fbb84fc0578f80d137f4777b2b8bfe1326441c1fc95ac9bf701d278a87e9a65a5abdcf44bac18b8c15bb66a04aa3543d84a45b50704fa2cd73ecf2b66a6883135b963477550b7612aa4f106f9ec14e7314c1ff97e19c5e2e5777fb6f350ecc0ba3cbf40240168a9a6baefa818486a51743982430901c2681cc178c24890c989dff7e88914aea96d93332e4f5e4d5b231c8d2d619f7584e50217ee52573042e7f30718cf347bbcca7d9089193ce6d651ea1363978ca0afb19c24f432e2c53fb8760cf9d7d6b63e39cb01caf522c410c055b9f207ec25f899f98abb7db8eb02c26f7eac12cba46999e963d382983c1eb52dea47f09d0a93f3b5738ea3df50dd2eb0f33b0b7e2953fec60fa2552f40f9b58b3e2158d94504ca7ac4ac2c954113350aa430b207f6143e9d21e08e419d93b4167c2aa4c786f74ff850c8ff0da0c94dc14fad9a7bca7a8f65d3fdc64ff63afc0530268113fed57de0b79d7b100e3272d1566700c42059200a5f4482adbd2167c1de9c1ac725145eb17facbc45abffbfa8407591affd27f9facb6effd6d7d60abf9e9d465acfdd23f94322f6daec7d768e9f60e0944ccf6d4470179e2e96417a2990e0b14c35dd412e80dd5494ff9e895779868ac764aeb9e29ac5df24b5860ce6c1f3eddc382ca67a00e82c8ff380db9bc3339cde6e6f655b50b2fc150762732880805813c8db1d5db345405401a1a47dc8d30b292666cb55f60fac5b5976f13ba2158dd1abad7625a19d1a8f0e8e42ed79b7aad2d690f71a83f27b6f1d47b6553df8d55f5345c79a6fe060571004109a9b60878928082a8137852b21da906b8a71dae0987d6d0c486dd315eeab6fc9b88a2c2bf90c0ce9fd282e5034cfef64d71317649571bc5021ddd8ed004723c6129ed3e7c6e0ded6b968e9b1677aeed80aedf57d95aa2afe38c9f6d5a65e090bc423e51397123108c8eb4a1ce3eed4afc2ad98dffa5a2fb5e5c3260aef1b57fcb7e8d104b3b5df83fb1e29f69dff5113c3dabd908c89cccb7a5a5c0e70ed3e6604ce4b079b85a5bfd9a950477aea179d69c924d2116254727c4aa3092c57ef567a4050b4d4d09259ade7cd82272b528cb8e16060abd9d802f04a29f1719b12ecfe3479ec430fe47878f096bfdf9fcee4fce080a3d0cb708a81d501ab6671dfb735014fc379c8ec2e2a6df1799d76c531fae18bfd921d1cbe9d10da657bfe09405ec67c580aec7b331bebc20356e861fa07dae20671fed787adaa54c3914704fa0908c61e5baaaf5972016b198b94fc39433c429b6ebd30d6278267f65231c7af27b7877047103990d2358f45cce05b0f3beaa4f9126c8f11bf65675a2a1561a60529ae5dff537a39152a46d3c8118218da5402992ac8139102a8da6ea19dbff953396b6c8eb382c696e95a33e646f8fe05a215a5d779a99f03fba02a33f860a53ccaaab91ee1d098e294e9d1a06ed218e65af19ceab111c0da8b3c6282c6b5a9063f6b27c45992bb9db62a4da6f8a7f8aef122562470b65f79611d25b3607b69a72f7c5f113f30ccdb34d116b2c9e40737b55a638b55e64ae270ae467a3e1b43facdedb524f8e872b4adbc35bef2ef45e374534d03b763a1d5b9065211e52a4e74bf85b4dc02f5f10a9f25c4e1d9fe5a3701dd2571a07149c95362c32a8fa596d4a4c4cbc476e7b10dacad89d1e39c5221019820eeb51d82fda54b7ef13baa149968169e051e568d39edb59b2a1a7a39b91c8d43cebba49b17ed18471bebd895b6ad3cc979089ecdf9ec5a42e99075c9e648b60117b9b2ba908cbf0092f052bc21eab5acb70981718a4d17831907a72353d5a9a4134e96b65c099ed8edf76a8901b75fa552c9350dde0381d961d3d97883c3d0f8b090250d15f9c49a3ae55fabc7f9f9bedbca2f9008caa89710cafde533cc018ec165b1ad167e3dfe6da21f5f47876a2e331eae9431aff2d571cccbd3245a2d988efdfbd8bdde9e2ed1d1dfed795d60975de830db926b79e5f1dfc9262ef562557f4d8c77c60c4a8c35c090335b87c457ee5dcf9cb6bbccff39f0c19f785fa256e9e03585c1e7122987db23fa189e59a20c69e9396dc0a9a1665236b2ee7b6e879cdca503378eb146e32f148342803be9ee7d15169d8207a4dc17241cd2f848aa86a9dfc64f61e3ac73b1409d806eb9fe11514985f020d28be1edff8ea7c6e3c718471a40d7f1a842987baeac4c0132a9f78d87abe1a3dc66ea700f45dd04518a6d655a38b6b972237720cc2db1ef305eab3357bbf6702cabe133e3644ddc9fd0378569328ca8f4dc8f70703aafdd85207092fe9441ff50dd6c40ba06b9392454df45de881f6d11759b2776d1139082f1f221b8988ee72b452779ca8ddf9cb384071448aa3daf902c466d497156ab547494af1967ab9822fd561ac8c8e9b5ea50acd4a8b10d6501463e5433bb6c6514c74fd152e9327e1dd01b7720076e6beb5d596f0bbef27312ba8790a1aa7173304b8991ceb0a35c529220e2894c841fa5ad895fc6df690045323381aef9c096c40c216e5bed72fcebb48f1003619e188ea7b32fd3472a3b9ec4c78b0299f7bd64e9e56ed4542e8d8dd25c13b467c9da4501659b299e99f9eaf851c305c6f319cdca930b33542411fb5bb4eceab37667f047175eeee848b670bf9b34ef054e038857dab9f7f480a42c0ee43694c3105981986e07485b9ddfd83dd4d7c9bcbe19de761e1453bd8ca1477348759ff994e3883382172ece925381662a86259187d85b8f4f37a45074e647a0f644527c3d573916da465d30e6e896909f7679105053e31e6e5a68d961003a7313092858169afea3c44baa0fc8d1adefa2fa659a64cf0349468a4b9e296b59049a50b7d09fd4c8af99160994bdeee98853b015e5d34977930b59fc7d9a36ff7e22f420265862ecaded56f41dd58426728fb30a1bfff8bb9b119d684107d3dd0517fd3ef015664500c68b720be2e0d471027196f6e705c3337e7ab2c721a19dc71076dfd7be3cc4547472d282b607bd6f0cf4896a222f66029961e3df081a4151ac9bc296cb32caa19ef4f9cfe628e6c58992e3e1c542027826f6b32afe7a46c3ade41ca6c00fa44bdc794c0a77fec5be9415a251e9c4423466dad2253ebffe62990eea726e27a99214b86a30f969c2d611667e0259c278a9a8d8db9e2f36c603d05a7c334a74a8c3644de388467375d69a89db3be8988cf0c47de438f7f317d4686c88443617530a5e8e34884dba989f72e4c10e7bf4495d5fb27eb42de0ec3fa21c79fe9abe992368b30a09e29c7d3dd356af8d8c6d293b7f3f40279bf35541eaafba7987eb56150b1d5b5bb51a8e6496b8a8af6445b1ce92943c16683572f4538cbd1b168db24d9345591cc766d3d148be70a06d8348e6c3cf5f457fa1bb4d7f0f562883b0d719316ca80e1aa7df09ddae34ba53301bb0107349275c73fb43d83dfaadbb0b4467144f954c23e9729886b3aa0fc08dda37570fce711b735979ab7ec918b8d90c5a9255c21bdbaf7e999689133976f67e834b0cacead42677a70da52a8e5cdb5ae7b1f134787e08739bda9a173a4d29ebc6d8b70b702a8ee7bd4c3a83701f70cc0e07f34c768b785a415a8dfe101d91a6a34102dfa96f945b8fe3c460ff66b50a23a4bde2649dc3708cb51c2cc9527edd087ed08c6c0a1d109047fbaec6278a11ee86294f09f949e2f83c504a1f488a359c9f56bb85c70e1e28b54d8848842df54ae59c28f90451bdc6a5697191658d21bda690c3f452c6e5f6c668", 0x1000, 0x5}, {&(0x7f000001f340), 0x0, 0x49}, {&(0x7f000001f380)="2b56203f4be9b79aaeafe2f8acf6071b9f49209831e13b827f2c0730e4feb56f34e2b27f3ec3e2c717b6edc1b0820e668a694b85e24eaa29918478d9e2666e35e9eb481fdca5bb7534ca351d002b35591fdf6b40981d7845db9213bbeb003af186efd15f5380dd641b32f3c4cb217ff641d74af175c74025c2826ef04c7bd3ee8b6c3561a432e8da198a", 0x8a, 0xfffff000}, {&(0x7f000001f440)="24bb5bab33d912316b6cf662c7bac1de5fb2fc7f5b129a64c641e73250773efa4141556259d3df7ff4ab1a2236965eb47bd56b6a6246fc101d4a64c59580379c95932ad4df083f5fae900c775c043ccd8a55fd635055d9f09160e21e670c4fffb18971b199a591cf04b94c75f672362c95b1767edf88281fe6fffbbc04b3427654560612f563ca705d42aeafcb038fd267c3767798e7617a24388a738a4b6f65cdd2083ce3de1dc192f8417e06f8ed946ba51d0a6e112634276275c55d6d9b20380d1263844f", 0xc6, 0x3}, {&(0x7f000001f540)="730f87f0a891c16d37060effc33e349e42fa15c7", 0x14, 0x1}, {&(0x7f000001f580)="5c51d42a0601652428cdd70e96ddf5c869f8fa9c07444641bb3788abf5f53ab424727d637e7663b64970c8089608ff8ad9781220f124951cc510a430f8da1a0effa0dcfe6d9da029c11af960d28361c73d40e59e9256072ac282c9b8e1eebf575278d862d5", 0x65, 0x5}, {&(0x7f000001f600)="7d4e9d9bee92556d76c2", 0xa, 0xffff8001}], 0x186d405, &(0x7f000001f6c0)={[{}, {}, {'=\\\\]*'}, {}, {'L&\'{:^)%'}], [{@mask={'mask', 0x3d, '^MAY_APPEND'}}, {@func={'func', 0x3d, 'MODULE_CHECK'}}, {@obj_user={'obj_user', 0x3d, '/-\'^\''}}, {@fscontext={'fscontext', 0x3d, 'sysadm_u'}}, {@func={'func', 0x3d, 'FIRMWARE_CHECK'}}, {@subj_role={'subj_role', 0x3d, '}^@-'}}, {@appraise}]}) r8 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r8, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) sendmsg$netlink(0xffffffffffffffff, &(0x7f000001f880)={&(0x7f0000001040)=@kern={0x10, 0x0, 0x0, 0x8}, 0xc, &(0x7f000001dfc0)=[{&(0x7f000001a100)={0x14c, 0x1f, 0x4, 0x70bd2a, 0x25dfdbfd, "", [@nested={0x13b, 0x87, 0x0, 0x1, [@typed={0x4, 0x13}, @generic="4fb7fb7ade1b8d0eee4f78a45f5f31aa11ec308e3b3af5afe2aa7c12703c66f1aed13a5993d903ea1073406f0717b8811afa4030", @typed={0x8, 0x5b, 0x0, 0x0, @u32=0x8}, @generic="9255ccc330fa61202fce8af2ac1b5ebe2abe8eb3ceaf1b08211e75e098f90b37abc26217c95e16b5e536740263a1d287e4ac3cf69a82078972581787bf641944d7f13d8e00578e003eb8ddee0a6da896579372bb202ee571c17dc627a713db49501e8998846493743b72bbd6cf3a2ea2db54ccf1c87c6a8993ef0670743efea94051eec280129b92f56dafd5c21a26981baabd9d25a3e7398329c5f28f1d2956f966be7380d356c6fa4391d62d8f1e4c23fc7d1238ade50b162872d50e6b43b8bfa8331f86fd88bdf42b9441b5c1a7c46fdf2ae3383e06bcbacf48249de19324e025c0c0df716ca9be79ac0af8c18fb7378b7fc2336b14"]}]}, 0x14c}, {&(0x7f000001f8c0)=ANY=[@ANYBLOB="ec120000180000042abd7000fddbdf25fd0100801d79f63c3f02cc859e4ac74a1a209ce798a1c2ed1ecec062ec34ba7f8e206d29f327efa3e6f51ce3f4e39710ba42436392e7a2a9fff317e32d1c3d5d8a12220a99757865627d017093b98ff908007400", @ANYRES32, @ANYBLOB="e2d9619ddba1b4b4f11750aab06a2411c42fa2b48c2f94d510710614b7e208e8b455abdd499c18b05962c5624cf629effac50fb459020876fef18910017a9ae9aad63825396a8c583df4a0a986e930d38c60aa65418067502fcc481516359eaae642995c29839aba0f560f920dc8fb2d04a92264116a9cca755168a869cc05212544cd7799f48dac81c21ed4de9c370249a43640bc77fadc7ecff9a1621a7cb227c7a23c0d86b09df947de0194212e89846aa50d7a5c605fa134d7bd5a90a3fe5123dde75fff0179822d98637464f7d20f88796cbadadb2a658606745df408d1788ae6c4ff8bda671c19c6f1b9b57d9984d75e9a699ef03bbcec198c29580a7900c7b7274660033fc8272ea3c4d86b4bb9b4636018cd35ee41e83f6a7c9fc56e5a917b3a027da7c999870c005700d20000000000000030d142a4a1cddedcf34316533469282ca9dfca57e734f2974969426e1e55181417438277c8e7f2d3b35b42911fc6c2221c13b7e3664f75518048cf83cba466f5e8972ce8c27565267c04b206315bf5ea6e03f9ef3a81c608fe22348b069861d4fd2dbb84433fd8cc4553bbb8e481710000002704c155009ff52e281fba845422ee596c633d1cc40e13b65b18e10150534bcaac9f67b93702572b4a692dc52cc5a082d9fc90ee45e4c9ededea5bfbe2f275da65e46bb0f1bd9c515dfde430e80a5c58d4b22eec452948c029a35c01df915f355022cbb37b5240d6985844b0ddef30854bd2511e49c5617275a85640db31dcbc910c78af3387952a1303fdbc852cb4a6b627d0224cc2b54515bf4d9ec08c06e71ec425efb5d145cae15ed0e2a792e55cbc5a2e7210d208007d006401010014006600ff01000000000000000000000000000108005700", @ANYRES32, @ANYBLOB="5f76c741ed90e307b039d2ae95356cdae13b4d5c88cc58560e6bef39fd5240abf51fec34e840b034ccbd82054918923a8a564eca735702d52f433ee953e02df50d6faed115326d32e802aee80bef77bece2526e8fdbece27baff8b23589181f2509e8be4a3dae3879708ee68d556ff38f8b1bc9e1908a665ecfbd30352c92d8847c2a3268a994306c42d23d00d0d8adbb942533220db437536f9a8c659f0c14f4836743431a8f74aa2ae4bc2f549b85ff4c47ca2eef74119ce32e080da9c4c8a6c6d5b1f50dd89b3348ae29c913b6e86a92bfa2b05d0e97a24c738faf4e06b645d82ab69fbbd176412d7136934af65a180a367590fcd8db482e709f3b39514ef2e3a400338eb51af6a24d8b9e2f268833e3e411f2822837a501a7b40cdeb4e80f125bec42470bf2c0969ad8159c31562c808d7d09a38b502b5158c06d0ed7f88222182378de9bd285133f5441aaed5186310689e0b96f976310a3639efa4504bbcfbe1ab2b3c979a6c0dba4407d90307237530bc02cbdea4dc97a8e496fe75b9bc4dd3aaf7856ce382b10ae6baade10f899715b6bfdee50db26494dc080f65b625236f185ee57bc64f3289970b3eb9af3d32927016241ed2b08619fbb3b3e609bcf1a8ad8af9539aed8060ccc603e50db310c95cffe23dbe0357559518e37b441f016fab09f4006ec5f6185643b942deda05d8ec442d99d3f61f4fc39cbc448fb584a124df3b82336ba9b82c3f754a5a05ee87dec4c4f138ce2f49c86eb43732659d0f23c6bb07e036ab48ee51a0cd9629dd79b242020f9308a57845be57d3749d9575f27962d5227d2558219950ece78681b8a0aa5f609de9b6e27e847143348f2b52562eee9ea9af03b9cc6f5b7f32870a586a778492a5065c46b8974885f82710a918fcb200ab615f9cf2fd2938ff0f0b184701f95b9b26c09b5dc6e8a2ef7e38692ae82c10ce0f614ca0cc7fce33db4c0b6dd72d0c35c6db56e1288d300a4dc816354af9abb5db9feeef52b2ebdfba788fc2b6305e4095c084b296f38c2dd0563654f642e902eb272863a3a3be3586733490864d6a37676ebc724705098a144e390a943c783b8242e1450c541b385431278f1b205451664b2a92c98cffb7c7600dd8bc4d7826c2b0ccda03dc3be15d5fc914f4b0352ba76fa53dcfbd052a18d547746f5966226b1b0fadf423f8541805ef84bf0717570a86180bb6ad401b22c784f18cfb0fcbc2c270c471ecf58273d04a7b78b169efc42b4487b7bddc705745ce7dda36b09c0eb3dda07badab4d01fee14351b2b4b5c0ee656de07cb15b219243a530be22adcf1c05b60b9c0006ffe6d6167911368ee696093074c1e1a342d9469a3c451ccb8a2fbdf737aa6ec8794280205ebb2c94547f7d851901299e884c848485eec76ba82c8e2387472214e0f2a0a73f60780316c5e50df532dc509b66800430720859e459f68c93750114b96af105c8b100b446bda7bf502eb20e29c19b3e94f8f35ed82afcdfb2886fba42d2c718f096ae9ab3c791bd0dbaf90c7c7d1846e4be7f215ae3cc0ad209f51efa21c0c6e9f6119bdf30f1c28ca2082d5d41badfac6a39b3add9b929cec0423b8201c2b3588100084509a9a649b67d33ddfa0c8ade79a91e5a1f83f411368091a09b0d1a95278453064ed0f7117feacab84287f89bf74f2148e376f05ba626d432db190fffbdcc6438dcda32ee05905c0c64b19b89284fd18f32523c0463608b524592120a97c44f539488276fbb3d13ced58938b7a64124bb65289681cb01d400e8e97681ae27c77bb445d52580a2bd3ba08dfd6e270367814e2e10f52243aa60fdb321d0af413c3530656463c08237da94c1d32e55e20b010fd4dd0a4ada67eac8b08a9047e4d21951b9be95e2e7af5003567aaee423db6a0afde5b450a3fcf8a3a57bea887db4a8ce175d9120742c8668de330deeff9cb02e6afb56c81a43af9f22ffec01867207df004945ef1593a1ce2b557ce481b7cfa6178162962ea4f68ec6e78dbbb48a7cbae897e8c26bab3910404ae9532daf6cdc9545676ae60d35d45235edbff0a43a4ed3fab062bd7ddeb8f425c5adfee786ff60cbbeea145b1eced4760c761ed145607dcdb5b6cd4f4f7e891ac9c87434a698630502a56bda2281b32ab464518e25ba466ce73480b795ee4e5756fd6082e90df8ea06e4a34f8d57a544090a270a666724a3d2d7c58584a698ef66ed7bcc6cf2289c0ed288fc7a5bb41f8f5aea378a7e94edde34e963b46e4d367958b38dffa7744006b8f7c8a1f0aa96da26e739a05017f21791a13f6278a7d6eef2e1610e9e5aaad292352d97786ea6e40da2455957edbb2a09d743054bddb7f8df5f5e9c04bfb2d2b4aa576669e61bec2a7f357f6063243c5ca3aa220fd5aba50cdc0f6d49c4bba1dee166cdf9d62a40faef0ce05d9e21e76f98434ef0b3fe9f26739d7ef477a1baf39d3f7ea16b4da6c6b543f02fa5a9813c1df2562b58b2f0b59578f0c8548e0435486eeb5c981f424e1c7a8377907484ed70241daa794e2204869a729caba1120d09b293aefe4d152262985ec440e7f09640afb33ff22f6d58dcb73cb9a42906326318ca17b9a2872a3cce61f41a97574ce656d104936cc6d07fa69cb31516b9e008e94b9ee4cee4a0202f41447d99c1a97632682fee18bdde8d6888ce600d155b3c013c159a7786302f17927402bd6b55ca0fc2594b9dfcc718a4552e34f8050470c10cb5d66effddb178af56c35595b963fb5abce395000f06e93f7c461875df589b4dc78bbf3322c184dd84a655dc150b67cfac2ce3183f96a03a4a59f5ea01b348e371ef9fff25997b7d7f3dbc91d0863f0eaaf6e832287e84e907b10740b0e014811c12e56da43f1132d9603d516fe1827e2ba681726ffe885618bcf7df6bfaa5f86fdf670e12a8c0e946965b04cf8be86b87d4c3fa130ae898bf90ffd104f25f7d88b6fea58b292117ba865ae0d482b2965431826afb5fe367c4f91c3cc32608d8842e48d1185fa460e31ffc4b3a979ed899f53bcc4522093c3a2f837d65f803890e74f723e4e8f4d0ac7133e5dae0c0a7d505006501fc9b0aba10118ff351456a7779daf7e7fea323e91b132cee67252f59ec4fc6b26ab1202497ca0d8d8105ec0553bebce748a739576f5ea9161fbb14f49e7ab21584cf23372f78e81143a2df3d5311f1bb85f0f7280583fec145b893c129e87f5e8335803c310f713b27eca8f5c6e213b15dfde54d2ced64e35a022356c8b7f249b3ac5af794011b32d6af7b5456e77c627bdee6f53aa46778ae4895ac6d7e8d82af26b560e7514ea10f0989d7d57b8aaf57fa183d69123ceff7498ad63aa6b33a031ae96c498b8f29426d0e2e7373d18676e25af8397e09ade743b352d3514c57b3d1410b84310a54ec2b4dd6e60a5e2ede80ce7d211f1abe14ac437c3ee14fff9c25ad75d6786548f2abd760788c2ba1cf5d8f2451685d754a2349fee33faa768d9b563800d4f334d8b2c41428d0efe6e1acf59dbe587383bfea35da1e109c4950d075996584b9e5175cd1ae6c24aae12c164326f59aceb32005fb2bda4fd80a60db1e2c200b876e83516e692f28c631d7338b4391c7c9d43682a98c8ac6f1199a9c7a2c66a1cdbc7fa7caaf15fbdab3ce9131004d71172699a65ba8376f271302b6293fea24a61ac092ba854c6ca326fd2ca6f21d7821d5e11db480c007a308344102c945a9c21d0378659cbca74af34b36f449a99afb71abc199b5b0e6e2d00fccfb17f019e90452e0b292b9e263f5189c17d7678801953d58b3219ae01e6817763f5e7df2240c1e9134f97be36c7921b3df34cfb74ce8fb89ff08e3e2888a85362289418e2c847e22a77846b558091bee7e75344b0e8bd3b14cb950f51611f01ee624213cbd6c8749f9a9d142f5853e217de7cd4a5f99a6bf31d6aed125a67c37d15437848e1ff88b7d7405d237d7ad83c53a404cfaef94b3ab5ab8f6db30e2f758220d9e544ada2288fc4a46ae3ac0d3f4ea8a0fb8ed78939c6929c7115e83f1c8617936825ac979e4aeb9292bac03fade2fc2e8e6ebd35354e36ecbcb275c7d69d7028eb449c28a137a62d3b801061a8e2eb7a98d1c1f27cf2e54aef1fea0a62e884bc5ccd1202715f09c2c485eaef5c235bb5791984de88c1f114764131ccdfdff29b52a119fc630889c249075632fb4a870b9e11b55a9686f9f2e1e70930a1f29c05fe08f560ab8727cb569fe6cdf2e5b084b3b13c731747bc9930c0cdb5cf903a73ea0fbb6208732c4ae24f592be9c08433bfbd218cac5378b214191abec975460329352447d20a963d973f5040c5b22bd95fad842418a61b4b049c47304bcc50e3381d2a258c8d32ba8dcbdddd795167b802214350ffca60de790ff0b366d596f43f5cf494941098dd3a83d75c718bdfb47e9a360c5a4bffe92338b882227ff3a4a576a3d41bc830b34fca25be7c1fa9fcb63eacb6c169d4054ed529d8046f5d085660cc4ead6e4292e62c08fd1a67bfa62ec66777bcf4d5fc33f4b15d834ac5a6171512b076dd98cb56e613fc2c01b784b8b0c2f5346f08f402dc5b665f9fa5233d6e594bb462417ea226aa78754c9c3bbd08c50efbf68595e8579cb68f71e75f14f8ef37ac42d5e2c8925a8f334608ca8d4dd5469422213e2173b6cd21d19fa674819644dc4411bf79a62448b21660bad1b8edb4486038ceb64f82b26959db1e91979fbeabad1160db965b2f279f0111dbe5483ee1218c942bacddbc3fcb75339eca95e2eb9cee8026dcf21891e3aa4cedd9b8f7a1ff0dbb27a2574461c4f428a67e22ede3aaa91356ae10f4d5c674b343aec1de89c7579e665de9ab40ace99f4163e0d546961e4ef8fad25926ad1058872de9f6153ffac3a8de6b258321fb27cbdb6e05b2a88768a704346f407f795404d45a57feadca557ddcadfa99ac2aa2c944d9642cda9c3474133df4593b1a4e050f60c63e99ad209e9c210d5109f8f8f8cf1b366df5c95a2bd346e8d9db276078a9d76809ad574c23fa5f2a6f25e16b7ba73a484f1df46a4587a6a217b8ed2dc839ec3ccbc63703a682e6d63b4e1c5ec3d719893b702b9f6e9d1d85a829de9edfde1aa6f668364221995c2acf6212fb11974750b20d6c6ed374c8b78cc40f24e0b0574246645ef2a9319bbb8dd7e6d37202219af2482c94ea77e31d069dae53d63aa24b93fef5adbfadde5cb126b9bcc07dc44e5bcc81d56a442b630cb864fbb094c4e0afa764875ef9be493ebda15fa58bc28e16ae1d3557802adca162e679b1f1e7c851a281baa16f8666df34241edaa8a876203f610a1fa38b2a0a3398e0d1760b9addf0efeb099dfb3253a63360bec14e1e24813c935c97993b6510a017cf6046c82b43f1fd4eed20da33af714e858b6a4e45a268ae2247f68b3c16baaa2c3e9c6ea74801f73690edf641bcdc1a8c1175a09f0d44e92a40fb5c12d779c96788d6158fb10613f6fb439cf79f78f397bf15b6e9dc4b0ed48c288f70d82ca048e6ddeb72d34b9dd28a41ea991c6a73a6770533865813c8a8dd8a4dd1ee92c88c6fc679fb3b16e2e47d3a4c66e1ac3ffb65e94de8a55fc1440add05fbc238859218bca56fe850ad7238005b3e71ebf3c65677a07d8e378b644102403cd8fa8f296e73647d145934d7aed49ca1a58b8ce7e4efcb62fac5e858b2546c2d53e777cd9c87223d77cdd758094ecbc6f3c2ea54b24b4230ec4fe8e5ebf711ef73feca9ea8c7534e2f44e561b7bd1c6d60387bf32d660970b2bc9901834c7149acf38612dfe358fc0ff7e67ad032802760000"], 0x12ec}, {&(0x7f000001b580)={0x12c8, 0x32, 0x400, 0x70bd2a, 0x25dfdbfc, "", [@nested={0xc4, 0x4f, 0x0, 0x1, [@generic="91b31e73dd42d681effe1ad6f271f5441287ef933b687b552439847732f2cf9674d8125893c5993764a22bd92a3c109cd5bca5b8fb3c59bee4d569fa5f8f1ea16ca757ff1f2e27645808c0e060cefb61ef7816a90259c680ecd5a1ce9696eb2dc5734224aff8d1f3d96ccb42d98be14dc80e0ccf00c802823bc7c915b0975bca9b943bcbacbeb2a4ff951b78a2073ba58987586270f1582d700b7e581dae2eebf5d381b737c4b742bff837f1992eaf995639ed29", @typed={0x8, 0x18, 0x0, 0x0, @u32=0x8001}, @typed={0x4, 0x3f}]}, @nested={0x1da, 0x3b, 0x0, 0x1, [@generic="a178a05fa4cc3c0479af9fa9060aa293e961405a6e8ed64cca9a2680b0c3586ef8a6b0e86c35d16238fe2ef4afa880d466a1f181817cce96d857d07bd7cc1ccff5ac6ffbee29e6ffc6fd6d3e1d6650b5e7412037f7e067f90d644333342de4ea6760b46ebc69d15b7b4ef75cb78b2f02ab170c38eea81ef49184b23ccf6cbf11ddc0d832fa66494af0640fac4dc320e7a39ce6425889989a14d43b9512f0638a529be473dde7ecaec48dc57c4f4a0c39c9db0f70732dcd67fe4b7a0c809291a19ec80533cfad7cb6ca2c092374acb4f6cc", @generic="eaabd602fb5d9f6ca10792110d7dfd4e4621eda1fed12c9c5a3f26aa03c4b4a2935f40ad0b1df5d9658a271eab6105cf4177f8ce5896ac5ed837b56346210c8d1c13086aaac4d354cc15cea1214821b27965cec3f5b4269cb593b7a6c4142182af423858226bd48e8bbad34a657ed5b8961b4c07f70556060a98cb9a36a2b098fd64947e3eb65798d2b29f18178e8a75aa0da0150bac32be77d8f1c122bc1699341d25d885027beb9e6c1ce2211ff54f0e70971d0e68772431147e4701", @generic="ad4f8b83cf6796017ce337f8f9fb30abdc90ed3bc6edff78a5aec61f2f0a9620cc9ccbc217beed559af1b7b491c8fb3d97d785d528dfac4808e28109b748cb5f", @typed={0x8, 0x69, 0x0, 0x0, @uid=0xee01}]}, @nested={0x1016, 0x2, 0x0, 0x1, [@generic="c551c85cb46b1481c3f724dabbe5ce707354375fd5c983bffd150a14af770ed1f6286fe7044cb0b45a8cc32d88e4fe59d1455fd201a29b5e0204666c088e4a8c740f727109075bc6947ccb49016d1edd6769a480d7ffff19300a4be1a92aeefc7773edf709eae3bab63e90696c12d70254643a690e2ede605ea37545897957e9f80381596baf312ce381cf46ea67d3a582ce06805ed7b3f72a941f41828312a176cbdd067075dee34ef04ee374f3706ce96a944f51803ca5b468cc991f3a1a32278c4489fa9f092133a58a992e80e37953899ef846100f1ba5e1c9f362cb9d00e9e5b6cb165adb1b7cb4c8f35eca907ac5c6429a89b667450f632f8a15c31f34fe8328789a1709d4491bb178223c02505bac3d7720423190d10e045da496f53fe3a0229f5e2143903f8fa6acb3787c41a1a4a425b13056d4280741bafa7fe6bb437d1b61ce5e41080009977879858b98d395fc1470da34f820d3a3754cc522c070c7aa518bf5f5d97ebb32698c0a30be3eee6cbb4f9f964192eef4f3af8e1f641e676da413d201332d73721666d29b09635ed2444f1fd6cde17639760bfe895554c4075fa2c9ab4282e56769a70158cb379117e4fe75cbe4ede6bbe81a17a3086a4eff138e08d7d5786608e4b0aec48fdd352c5994a7d2c7990c964bbbea967cae71af767d498cfab911feab1582c0ec0f597dd4da7fd1ff4d91330ff5cfc5d1281551c56af14c69c1f39b278310f3ca108e71633e88168179f7e2d0a82cd3231df778ff8fdf2f862bc2c5b8ee6c9133d7bb25f7c83dcd8c992110af64fb43dc3bf13df67e4af2f5e2cb7969f2eb24df4b21035e2f0c966c55efd83896550351e99bf2b17f855bf8ef45ad5e5b1b369615a8267f1b0fb4f2ee89d0e1e09bdc27e6add670080053f1ce551b7dd7aee7f0a97e3a6e47ae31043793df7aa4b15e1019d5d0db4caae66a4aacbf3ae42adbf0bff844df5fa2e2dc4ccec6119495fed03e248921cee12f82237d4f27faf119f76da4b70d416c683678edac915e0898bd935e8e9709c6d3b548695380b28e8f184bb4f10d4e3141b68ed853802e272336b8ed60ee4ab9621fef9c74a702663baf3bbc64a346a69701d18d8dbb629e431b5755176c0347a94a27049010518ca626acbbefbf109efad468f5b627838c6d7b188e873c52a3594a4161156f79f47508a27e8cc7ace68f025911558f2d121f2263739a9d7538e0df880768fa7499a55ffe271313f3b0152d06f4a351f5505a1a36384784a05fa0f482943583595ddd7dcb8bd287a05ed47cf80f0f15fcbd6a2b6ec5df08cd88b6320dce0b5800304931a615ea41b580a2073dee220c0007eb4cb8694ad0d4547b61977e38521bc5543cbeaae0d9c06523c1701871ffb61955385fda49cae0439f95a9ea031263f912fb1c65a2ddb7df94b52c82e05f7f3ce4e4dd531394d6f973c49bf642fa8287f35bc7d0d15e63159d5006aa848ebfa66ea6fd3bcff3ab1e7b0f68d9713e69262d205083afac13d50f4356be4f4cfae70854985c326d099c98b3e666a0cbaa44797dd5966261bb23a2a7db75700a3e3fc59d1ef444f6b9f94f50f6f539d99f21dc30b0d4d6d9258bba5ad76ad7102747bcc2577726a2f2233741efcbad92be878331d55c2f10c26eeb39159344997f9d3a186f098251d19354b74772780200209db54c71230f1563f50c22e606a2ae038233cd98c769c61178924deb4d7d27379d01f4dee965e0894769ea686019eef7ed3ae9951be9d91356f1178b9548ad9d0affb69a4890791247d7298964a8c3c2092bd1ec41ee889e4adf62ebbdc4895a2da4dc22327336b9d6c0926107d6908057327f51f1a0409398c1cd55d27e7fd89edb4ab548105f1354f4fc146bcf4602e4c17fdf1bb873e68b58acaa3e02db8a0054088a69809e4a52278c3ae7cff3ce7a316a3584ac1a1d4291434f1d73707aee015a82978a9d50fb21dd83b09b77e23c3485c840da20cfd5e15e677a289ccd6e697e47363640edf89f36a6f3301f2b039cbf5c9882b31cb92d9a2b02be8ef5a5dc97fbd12f376196aec99c01a5141f430028e70f9847f6437d138be07a3b5463815ae0abba1adc3f7e87f13c42cd8251d4393c638ac4807dcafe20ebba77cb75b9c5bc1cbc47ae8f4f0127a0910617c878c496a21619304454a535e265d80df3af41bb2df76f2ba687cd84f8becb75a7e50d26f307c8b21a6d3fcab4239ce4bc16dd602ab106635508d93e558898d511fdb6937f2953ffa9fedeff27cec958fd002721bdd398079bb7da8c09be3ebf6edea71c1e3f7a110eee1ece356957e62942023c94e8c2b86e483cc8dedc19df20ec3c2a7642a8186063fa4fc21ac2a4038db8347553b030132c9faeb37510a52107c5b0b440d3d9a1de06d7719d7598a9d83322bd54a556c494a20b3641fd5493c3d1dbf28b2887b18da30375a1c6f14ff4d5ffc0342402511ae7eb9c08c2f717baf881839ede521d2e493483fbca51b42630694c25f9b0ba935d42ba6b57b1e4e4c2470dee4f9c66d7c27a2aa1b2a4cd15eae7a5b87a0e3c673aabd790695a41c0480825f409e7bef3721b011ff569769bc4f78cd390101b05d69fe4a21a891fa6abf84903c55d556c936e870326a3d4c897ff24f93b9bd6d38743a7ea90d284cfed68104671e2e7fda3975193186c634b00d98f55f850d2a15025a5c5e9af19a993f3ddd47c5a793b9e0f475eb5b7bb6ba2853bd555fd0c5c77661f081ca765826dd3ede83a3b88c0d6deb08f0010fa2a912e30528a26012d19eda7646cefca140eb8cfd772e7e808e4c07ea6bcec55ed4668658fdb23a88f11549fed840325d5bd16dae104fae4af82621439d6316095012eb8c38cd6f253d43c65a327cded7383c9eb0041b2de55be60004860fd8e7bdf94764450e64a3073c3203fc0f6a5f5fdf980edaebd8b50f21b2612e4ccdb9ba1f3c33fd0486645e5af5ecfa1463eafd8278151540eda1925c1595b6e8f42e462c8b491b254ac569434008e1bef1b985e3a153d2980ef7c0869a880f88482c58b1b6080711769b5819b551d08c0527172f4e1570713be116c044941aaa6c5f60abda4e338d163537af398df33c7b571ff22ae8fd5fffbeb5c9e34e8611aa88ca42aa685f0d6f3634de09cef4e6fefa147b06eaa6499141ffc4e56fe4b9532cc51a2a09290e03024d0c39c9886ddd99117bcaa0ea83b87a3dfd36e62918791de0a32698a111726845e36d725def8382545b56f8b9d2db5f82a46dada3cd0a52096401e905606478160f4a1fd9cf3c15f56d21f9fcc0273ee33e965e73010ea7af5bd2da4ef00d7733b8e24e90afc86d41d2492a192ed77b07a69aa2820556d6e18244c7a020fa1375bdf2db10c5273052c6fb7042e182b6ed1bed5b233e804058004f38f4c66e72a28dff911db3945caceb00f6968300bdcd083bb4b877e5c1669fec77168231894b050a763cbc94c71ef54c169408d3ef6c202f7be82088f4d70231be92aacd2822e0489c5bbe5ea95f5b5711868d7d396fa9e74b55bb2baef7bd60666fa363b6445a1143fad643fc6c02e771ded091ccf341721525041487b175292000bb598fe09fedc8b09f70affb1f71aa4c699d8fd630ec5d836d922ca537508fab19e5bcee5d1ab47ca06e4b4d8651890783e0e2c41df9b5eeaf2e008c7bc61fbc374928442d2d7e9eb56e6a790cf9e329fd4b059d650c7fa1b6a918703d5e81e7884414ceddf0cd1f60dc9f03803248e2de06460985c288dae9ace539aa3b407eb78489f32f1fd96a8d8de02fe00f1a24dd8b6d9454ff2deddb7d5e6be91f0dfb2ce75f18b2e535c92c52e343dea501c7f423d3e560aab15f30eaeae3aa4e574beede4d22bc29112ad9ea0ed87866144691928daebd78481493dab75b15535e230d28c553250bc7c76ad242de45c2e0d7ab847a7698ee3bee6735b49846412b0ee505d97c3ccf7551905b3489dc5e168ff06a0f49d3de73ea6b184af2a587d0a7ab9fc25dd00fe1347257a697ac2206d93c6bd571c3bd0f6dcfdd3365679f8a870a863deefde78213bc383f8c571ca09374a177158b13568717c34f0dafa59af4ac5580e8fae75a6f2548fd73d7260854c2d7c6c92c8b948a29c2e603156937a947461c5543a5ac48070fa2425b942800a5e667c8997d82ea79353d3bf2ca5e1a2244bf2686939fcdb648bf20b513382cd297ff05a365773b2ff3446588965522b217a991e83bbb8686713da1ef1a8138cea5cb5910175c4fbb2a320f27b15adab504351bae5e860bb8f087926c0bf9e133cae5cd9ee9c43fbd2c48d2cabce9631924df8f810f2ae8832e54a9d45ce523d2c471f9aba8b7a5da852246bb8ae0b14d189cff82603a223904779649b71e5e14e50f7c351b55ac60215f64080291aa3cf2b02f9307b7e5b1cc39364ce96e5b28d7897f61130c863843e9b4a5871d5becf492070343d3e607b7ce6e7f59f204922c3bb1c5586ab7f151fe34d466c1223a8fb623d3d0f844f875007c64ae70bb9a3a0a2a5f09844b66178c1e087b506f49ce3a94f6081c3858d3be4a25d5f44b5527e21422f6454676cec8ec8f36fab070e766ccf66084d817cf06c497d1893328f8112f546106a5336bbad7dd2f9948cd5898ea78e981e9dd9b4a221e31d6285612a89a0adc4c6179175c70b17a0716d882d3a8a2c4a2e082a0601787cc74ed96ed1a303a426e6bc36e11fee83b98d4022ff72e22bcc3818fe96daaacdfd17253dac74a67da84de0cf06f8cf9a7da1b86ea483487fce2b08ea2ff9526f8ea3d3eb779491dcef61f1b66547f8767e85350f243b64ed6649cd17ccdb602cc071dc5fc4e65e5772e3f0e42aa63f65ff19da4647a0bb1a68cdd0fa7f99a56db300d8e100179d0e34ec8123bda781bef258b41c8290801d12d4073a5a3d33aa91ed510c0e3b5b84c9f240ba7e15dffc0da90a0e600ecfb8d657a9f6442a012878bcd8847a083489afaaeab0dc21c3ddf8ad079455d64c4f0a91da4d5be167c05303f3f352132680bd40b1f1ac74cfc6c5bf87d15492f3d9a99f2ba38480183e9a6e9aec788771e2a0fd2d3c705f8bddcef36f5307ef26bf5c8e4dd011ff11979646779cd8907457f0c8ebbc1f8855c07aa868698e665a8fdd63dce8492cb98e3890de67ca7d71e5c2cafecc775ba52006c03620e46fa5838b7794d701028dc7c9bcb27c2fbff5ef68c4f11f3c38940e38d542652ebd0d62fa9674385e8f41b04be1682b3e0bf271752fd0e5f0bf1acf8857cf03e3f948198c8f0844b6217518a3a5e52cb478a1b1e5765846d5a595a5804fbd9b2c7e7098c3296dbca1650a7e1c57cccdc97d635663556cc8da91706d3b9c64d3e6b846430dfe323ab7a26babe8b150a837fac6e593c1f3530e3b681dc748a0d69ca273a74442cdecd54fd12e0a7b1206f396c2572e100b17324c7488e9a17d115848ee7930227a1ea9b9dca3700183f066fd353729afc5097e8fd20b2b231c012b7f1f0c768ea1a05f406c7223000a93f22e131e56f5f552b054435affa5190ba155aabc13cbf404cdf0d86c6edf2f07c4e713cb6947ae75f6f08547540adeb1ef11eac22880c388fae60592265d12efdad53bb5afda667a312e2abf52034f0cae878bc19d7d19ffdf422fa9725b43469874d5377a7d466d8caf98f49dd9b50a68196608fab38d252235d156165daf81818bd6e27cb40e9862e0cb0a98f69e146e8598cc24344feb6280ff246e137d64eb84c67b2f8e21efe239615e039dced238b718d9b99bfc4d9042", @generic="1954ae12f8263c9a84fd", @typed={0x8, 0x45, 0x0, 0x0, @ipv4=@multicast1}]}]}, 0x12c8}, {&(0x7f000001c880)={0x4c8, 0x17, 0x904, 0x70bd28, 0x25dfdbfd, "", [@generic="6f1452ffdc4c277f4e142e063132abd15e25e608bdbd", @generic="d3c892ddc89a92929313374bba4107656458cda660de3237f6eaa67059b717c07408881c8dcba6b7426369db8a133de2104fa7803a8fc6a155356519198cc3afa7ebbc634f306a1a8a206c4e8c9b49915b84633569a87c27b63df860af0e554870197662b05055e4c95d08ceccecd3c95db644092b59c3dd3f", @nested={0x4, 0xb, 0x0, 0x1, [@generic]}, @nested={0x25d, 0x3d, 0x0, 0x1, [@typed={0x8, 0x36, 0x0, 0x0, @u32=0x7}, @typed={0x8, 0x42, 0x0, 0x0, @ipv4=@loopback}, @generic="26e76749c7b4812c8390ea6608419eb10c336837a5e253f07919b3ee1ba0e2e1b2a0b08aa9950cb060d0de9c56548af9ab187f87a120ccd38d98e002bd570b5c5302186eaff5b31187f9431f1a14549ee55d11ac44b2c5f5e83d36cec999cac547517b7f46abeadb818c676d345fb01f40fb3ea8e3ce98342c22d01f1fc195504713b440aaccd2366170df692cb39c227dc2cb804422b9d06953bb0e0edf7303ea45bc08693b0c6f35dc801981a0168133f1d21499af400ec90861a85e844c39f661ca6c8f0145f6b41f304f8f74cdb063486b673e489db37a449daadf6b1e9b5263e31a3b0dd065ab23948a15f3f982db26", @generic="84afd6346b18d052a56087aa4cefdeb9f4329cb2e263b1dd370408c47cfec5f848360d03660c9e74a0a47e7d16cc5fd6b950d888463de73e060363e1d60fc4070e819077dc006dbe4536c35b091b1d55745984ec66517cfe0be74e434d0c31c35d08ab38c493c81d66160aeac5352536b7c7884481ec0fd619dbfd3a35953da53ec578ac1fb182408b9f1db6164cb73ebb954b816cecd41c3fac7ba06d23d25619e124363ebd07e87ac7cb29aef47652a2489fd827113da788b23c95c80e57", @typed={0x8, 0x58, 0x0, 0x0, @uid}, @typed={0x90, 0x72, 0x0, 0x0, @binary="f63bd8851aa2143b55fb8baf727415217a598be1a4b4f04970694cff9ae8e695655256d1d3099a3851b61bda299ac82c2fe186658b5533e68702a8fef77a78f4badca0ca40a8f7be36032180987dbd2329a0abc54e65947ad91968f8a3f31b96087d500d88b1fbae9543fa5f491799812b510df0fffe993d354e41a99d9bff3d55bda936d65436e589076395"}]}, @typed={0x4, 0x29}, @typed={0x8, 0x66, 0x0, 0x0, @u32}, @typed={0x8, 0xd, 0x0, 0x0, @u32=0x2}, @typed={0x4, 0x6d}, @nested={0x1aa, 0x3e, 0x0, 0x1, [@generic="1a3b9c3963cd85eb6ee64373eba01df7973df618eb41b6d63db64c98a86c0865c9386d53d72f560b9da5ce1ed4342cdc52baea113826629f9bef0c735e69ec52f6d0bdb36dde3db66593a987c01bec55002d53f6a37b282cf5f06ad3f67aea2579bd3c51c570f40632d508e8212128cfecc94c70754b20d176b2f4bdb8db5484eed0d6460a4160c663d8f856b6213d2d71237db261f2cb9f4aa23b28590eab5ef36415ffeab08b709207f1bb830a408fbd5f3b652fe9d776a0e404d9ddedc0394d05bfb52c69c4f839a1981fe429d1b080f1", @typed={0xb, 0x47, 0x0, 0x0, @str=',#^]({\x00'}, @generic="a966058a954ea60e0691c443abf095426bbca6712f9c102ad948dd6c50673618467663c49b948aac8e5bfd06bdafbb845811f5cc5ebfedae112ce3cefd64f1ba63faf2866d867db970fe661798d00ad14c3f96ddd4f6c60190de82115a4e6fb9f9a98c526b8e1fffdfcc97f5890fa814bbaf5a7acc89117daa23a09e981ef127d5f297f95e23efa2ad1e0bc44e6712898776cc01616732cdfccfde7ab27afbfa", @typed={0x8, 0x8, 0x0, 0x0, @fd}, @typed={0x9, 0x79, 0x0, 0x0, @str='$!,:\x00'}, @typed={0x14, 0x6a, 0x0, 0x0, @ipv6=@dev={0xfe, 0x80, '\x00', 0x15}}]}]}, 0x4c8}, {&(0x7f000001cd80)={0x123c, 0x27, 0x100, 0x70bd27, 0x25dfdbfd, "", [@typed={0x8, 0x77, 0x0, 0x0, @ipv4=@empty}, @nested={0x112d, 0x6d, 0x0, 0x1, [@typed={0x8, 0x82, 0x0, 0x0, @ipv4=@broadcast}, @typed={0x8, 0x2b, 0x0, 0x0, @uid=0xee01}, @typed={0x1004, 0x68, 0x0, 0x0, @binary="a3af235ad4e3036cea21ee1529fb30a83c045b7f329731a8cac0d832d601070eb1c18c2e662523004a1ef5f0f3d4ab1a1f4bbe1bf4a5688fcfc5562e3df676098e0e75505eebf866a61274f519e3745c0df26f4d48327398661832581c7e00d9f6d5868e75292265d874c0d01e1ff29f9b2e1f5838b1f065da3898ad2bf2b7cfd2be98cbe428200dbf3972dfac46b4987ccb8f114924c8e87b23280b5dccecc4b8ce9fc82ff71dc06e7f1d78ab1fffbab13fd5507b8747770af8505d502d32fdab836059a487e45eecfbd5c3587850a48dd91896d14db752e70cfbc4fdeb205c01ae330de87826167143fe75ce5251450fc4c0eca339904abad12513895c917bdc33759a3dfd6b22fa410548af9958c371ebf20a6f7cf3d1870c7d14bc319afdf4f9cffc29989dbc3d1967e73967c54ab9a157cf9a23cb952fe72e20c93bb2176b8682d6616b092d2b645003bd98f47dc63dc9f9a970e0c5c466ff220745c6435972e32ab14225fa06ed96ebc81ae51872c7df58dab4bf003acf3bc161fda204faea9dd952e23d42d06857988df88aad59e266ad8794829ada494af089cfe753309bbcb6e73bbcc2469e13cbb97cd7b01220e0284fa5c41e22d5b1eb747afd796d2b3bd0db4db8f84f9d37ed14f3adfaf3fb3f5c84c1dc4adb51bdf6fd33b9c96d2e2e362ce4c0f358d141f7c4f8577e867dbd59b4f6f2e87c0e9a9986b82d4a0f1ee081d0414b31e5f5e426d4638a627a430c5d33faae3e9eafed1fa5ef1033f25731cf2fb972454940c9d978b9f6e300180ad1825b0506dcc5277fea7ab7d5de3c80982643457dd61a9fda315338be9f1a9c116a67fbb5b297ffc38f4223972cea979eddacdccbe6b27c281d37ed0347b4f216c2e2ebefbbdf206cecd02996d9fef6467dfeb40a1f2fbf2e960c18c150b805927eba710d082797958f040118bbce32c59880fa29ac4e3e64d3fe2bf545a0e805e95ad422da78f7304ab955ce8699ae5552720a9d93e2a6cf0b671a99a88d847481cbb29230e84b62e0cbc27fb88bc72385a4cf9c844e306a3db2cb3694fc3f775bf5cc3c1781dc9fc3b0bc104c2645ec51d1b761679a8746b98673de8ae56e5b0818b8562936523553066135e5db9db0e518599b3973724598f5939e0c0bee031ce60b5a514505c6c59815f8923325f34aa8727749db3bf6d13cbfc6999e2924d1b68eff4ffc2d2836c2ce15f114b4da0ed689f5f6b7e0af5ce70694831ff4061ad17e64d764c7385ab834e2fd17b11bae5f9f290822c65ad3b21ae33830cd90694893e4f14e4f896a49248348d28f67fd87e79c71582b552e8381c85585c8dc357945be90ab7146aa9a41856729ca9a480e55da107064bf4a2fd1c89665f1890a1172446ccfa408cdae6c15834566d756be0e83fb8780d95b6a781c621f394fb7073ea9e5ce3fba392406fbd151b327b217b713db2a4c951b9b60ce312d4e949116f0d9371885fbc0b6ffe009c5b549a9c11008f4602466280100543025382272c16234ecf76a707851be00cc3a421be7dcda642b933cc9be1d179c754f8ddaea3c90ee86e474c2affe87cfe47a1ffa651de874f53422028cc0254958fe72e8d4bd1527a4e3d6859e6d1bf8ecb5ee23c08d16c8a5a03e3ff2509b35fb08e83376b4667bee30a1b1d48a87f820b9c9f4d4afc669fe902881dca307c39ee5e4f9cef83c9934711bba97511baeb2ed23a68812442c710cd48f7d979e8939593f8c7d33fe10b930dc508f74c6abc68cac6f88be1c91742cfd3a14e570bccd89d7e491c7cc17ab931c0fdd5c8334ea95e5d2cfb231ebf8243312b865194c9bba579c82863a928bd25a974e716ae767df83a1079cb384bbdee89163db50a76d8e3936155b5340f13fc30432eb81b9e0f849bdc6425ee6831d61a723448753fd0cb29d10b419f1e5073200797a2e64c2bb3cdfaca19ef8880d2a2e4822dc11b452d528131e7311aa48697608eef60b25f6ae57002d584e9b17296e7a310b2703dbb80b0acbe7680daa6704d808482d6921fb32dce82bb0562a2673ed9350219749dd9aab63ae16652cb95f44abb8f9d852bff3d058ee3351142078a29de69ecea6f43d7706761b9138452e47b27a9ba0eb74eeec1c5d06327f8ab002aa57ffdc941d16b81ba30ddfc4b568843869b88f5df0d56c79633d6fd6e84a935f24d9b9b3711b4c1570c1966a6addadf9ea807566549fabd7614a02ef91a5c62039004c59688db379e11f535fe6b540cff0d4edd46590f524df4ec871191e6fab07e3d91a4701c505eb44b5c2d79acc293f59a5b03365b4c7c7f41b329d4e9cda495f911150cef59c7ad5100e09ebe54803e6d76a9c7fe924266772ceae9277094227305d182119636245450587a2c03931d86245f6a0e8e42f13fb4a732621efa4be7df6fbe56f6dd7b294cbedd6717563359bb64443b793d7a34b872e461f69f411f74b3b94b0e58093172899bee5bd96d253bdcab4cb8ece1cbcd077377fe3e876a3891eeaa253984b37d4305f3a8aa377b9a589f1c57e85a19e0845910b8cfc079e7356bfcea91398af8b917f9cae0dd6c6dc59f92d9042e2ce6af9e8754b8224d9b5f3d1d3a9e71a7bdf4021198dcb008cf9c8f14bcf0b564b519afb9ab08bbe5ec5b9f757c13b8ae1e581f67bf2dff278beed17b3f6f1e468e9d49000e575db13fc4db6ecef5a53c676c9ebbf07c1b13e14b2576aa82136b3f8a06cc635f0717511a0b2db3c6517a736d3e17df8c2231f7a1adf63784ae563a7acaae6488c2fe415e3075501d6151a2e4beda04f536779b9d5a7870d6560bfbefa36f84e87188871de57612ba482ebb4fe373415751a07a6a23bc109341caa419714eff0e59aae0cc8d580b2f6dcc623d4503fc81151979ebcfad3ce03ef765e471ef38bab3ac1974034557395ebce5867893cc386d55a5d662718bcdc65acd003331d824ddc7dbb1ad000a4acd31b1399419befe6230f4ea4e0ed30b0199a068f43cc718ca895aa0f810ceeddeb1a00b91f3304691b1b4e9a2571bbffab61ca3015559fcc99a5e9d9392c24b8874ed3c6828aeb66eb42689cf98d4d3a5d43581c900cf9070e0aa7a165d04cc8759699ade03bb60ade45dba196d7ba8b2e89c155438c84db9c3d677be0e54fbc00a73b4278d326a132e0187a98cf1cf5f247b77ce7c7eaafe578c987ca4401e2756fc9aadf7ffb355e8224f0c77c879317519a467541763ca67720c7bc9f234e7a2131e3574d21c848dfa5adb0baafc5f2263a49f63fe4868e4793842b68ab8098ba6334b89356c046f105daf8c72c17e073fc9e87f331d47e2095f2170c994ff38d468ee9f1b355a1994870e55fcfc069a3934a182583658aac2e394633857ce7edca65cacd70e8464d1e9bd40092907bf35f92c5ab300b078e720e69ce8453af37f249cdc363769275fee307c96e0686f248bb3bcd0c1040a0353970a27468b53c837a361dd8fa9407d398ed34dba214c731954891c77568a3fed2f95812456d140bb7d0366c76545a2a7e2ed6d63425e97ccb425e4902b52e2dce6687296fbb6811a33cef889bedf92b21f2736638966e0f3570156f6caa7023d7cb04e19f3b4d247cc46d049a5c2092002b34ea08b121cedbca9fda50ad5dc3ac02b190c5e0217127ea45934b00481d3b0b39cd0b4057b59a2c071a6e48b8cf5d3b236cae03957134d29c684cdc24c2d1b32040b5f934245a7edad64d03ae611df09856ab878d78e38ae036d4fd2968290c153774f34635e8585579abaadd8d53f148957d5ed35ae9cf8831056565f5992725abe9007f3b26674f113ff44e90cfe3ab7642219a8b8a562bb4301f8e451527a0538e02bbccc646a7aa80903f1654a5dc11c7bc158050c84dfae390b73e2343b458bea63745200d6f02051c3d3464ab538e5e83f8b0fe552ec534441dcb265bb3c186b21485a1b036f697a5959b91f13e3bdbce301cf071271f4eb28512b9ae868f0f28fca268094849a0d8c39c72e67af1eaafec6347aff1410c30c6d75b7b1ea7820d989d59eed5f578c4cad0e77f0d1c437a09019419283c79f06da897d9c3b783ff9edce67649d90ec3fdec7f70d76ebad62b187ca8a0a31f2da85b12d8a05e48d2c1d76e226e67c51b90ad9491b895cf2f577aee7caf16c09cafb7861a1d5f76f05b71e1dc015daf25fa570ca6c0759f77460e24171ba5b2d83cbf752eb36cdfe6b4e5a4afd9913edd4ec78b49ad1d3a7ccc219694b690f0cdafdbeb54376d8dba1ca745fbf958027202c5a7f2c80807f6988112e471e6957b1b213b2e19591551cbb3eccb623e05d57a573bc9d01c76c3368ebbbe88318b9f792e89c6cde04fa2ffc56581399c87f1b0580b12c1cbfd2433b4739e75bf9dfb0341ca49bdae16d42cb8a5a5f9f3f73b5e943ee2a48e63eb1e3cda487770e272f0ebc25be645b2b28a3e72a98995e6e91444749bbb63f2d1241aa0547ae3362f56fd18b45ae020dca407e31c83f0507cf0555dc468663f6a43e8c2b4b6ba670d38ccb9cd5fc3d527e5f1a7f5961d5e786c0df3aa86cc630b6190447e444d39d4e8cb0b2ce6756fd49ba18dfeed69a9613a5aaf0e855ff36d5e976f85e6ae8f674677d4a180221081b1b57aec0e613acd5b02cc33eab4cb61150577ce2dfebe67679ceccc9eb1088731bee962f5b1dae40ceb05e7a45c7bafdc560a1880925e931a907fdb1c5f1e328ffdd4636808c1cab5cdd466d8949d6423508eb27c1c2c3f2fd49bbf6a7f71346954c1e2a17bdcdb2f67ec1ed71b310e852a0dd46a2d38150685f0f2a42b417771c0ec103f0f16780e81dd0096c114e2ce7ab099c9d7486cfbcdf3fa2bcb8bee748c23e99d1abbf9cbc8e492a545900d3fecb7d45d902116544cd07c6beb73d7089cd797a92e7e31dd204cc6eaa23edf29790ad0310f0ecc2103e6b7610acb01e747068d58531136c1673ce29ba14c9aed174a2da10c9752bc4c32506cce31b444cdbadeecabc91f15da088c36505267fb9f312902cefeea85e11ce99360a427d3f6e1782cdd23b9be7442ad423e284e9656d60407a88a17a3821ab853844230948106e4a9be6fac5ba6d92cf957dcea5426928bf359d670a5a0220bd3664fb90c694c870b7e8e2f04d7c763c872750ab67b3833c936f7f7fd6b950677ed6cfdc271f66f127003b36c424fc10e1bee77052c7e7542cbae8fa79747abe1e66414a833fce93651c8f8c407e0b4c528efbfa2e72b99a93b16be3b9612a141bb1abcc5e591b0c855cb80ab922e750bced79114e2e54e088ca06e1da07b320c9c55c81d9b23936618f92211959fa11a53dcf01c889b81708e826734d91b97c2bc7df1a2d034cd1ef28988a71a109bb6ab38749d0682709853b902eccea867500c783758a395c84761466af7798ba3b5f66b06b7177526c565b20c85caa12923b112c4f02354c46db009c47253909f1747f1a1c80406ec923826b5232f475a4f09d88ea0ce13a0ed2e26317272d40dc09fc764bf83387985c9e5f6cbf1a46515d0faa7c89fdd2de4a41a04e202533962f39c4954cd8a760270031e43eb1e6b212c4e7e75da8fe77d0396635d7cfe20407e4b876436e678066390f8cd60c74b34375c581364cacc158517452528b4e9bc73ca9fe6d2b9fcde006ad2069b84d3a14d45485101f3245d1e05aff0faa012f3207f2343ce35ec6aae85f5f00490ca6da642507c4071399c2c874d30186cc0dd52c9bddd59a4925d3f08ddd478977b8629834011749d2b9f168597233894920a8eeba1b06373c7d8562d67"}, @typed={0x8, 0x5b, 0x0, 0x0, @ipv4=@private=0xa010100}, @typed={0x8, 0x72, 0x0, 0x0, @ipv4=@initdev={0xac, 0x1e, 0x0, 0x0}}, @typed={0x8, 0x78, 0x0, 0x0, @ipv4=@private=0xa010102}, @typed={0x14, 0x7d, 0x0, 0x0, @ipv6=@remote}, @generic="e6a43e1f90fd9ea3e4d56ebcbd86fcbaa7bea52431ca5ab13335711c5fc51c1817c3fd17a2a50765834153733c048088d2868f3758f1b0bef1f6959395cf94c48fbeaa4113d34b9893020d7d14b1bb2e2cd729718c11dd42cb6ce2b3d714555d93ee8fc54b75d07635ef0baead4738a581f9583528573fb86b3d33a649fcd1b856f25c66e538a8da1a74b2eac3e342baae7cf70f8fa26f096de729c0b47003", @generic="5ebb9822f6c2a5b84085a3379e6aa12f5f57093cd4f7d9dfd1793efd0d804b408a7115dbe93f155cfb3ed14c8f596ff94860eed010086ee95a8daae021405aa9a5bd983bf0f37a46525e"]}, @nested={0xea, 0x8a, 0x0, 0x1, [@generic="10259f32115ed96b7eb2d1c6c2c909b5086e0c37c297b6030fb352621195df332e10169cd2eeb046ec35d147446c5c27408e0d7667219b8cb770b8a753b16885e6aed98d48724ef4f6dc292a44bbdc8b5e8774fad95f", @generic="b2b0797c381d115f1704", @typed={0x8, 0x29, 0x0, 0x0, @fd}, @generic="bf3c0e3a2504b8f339856f0c294558e5ff44e09a5e3eb8becece2b74aac31cec8d4fb47a4a0274f09f8cf710eb972c77224697f5615b6ce76d51fbc650f5d68ff08fa60d99161a20c4bdef759ed8b15ec2ae839bd771c0618764c76a428dd8edf183daee554c22db41e4496feab85036c2c3063d4775a265aef238612277"]}, @typed={0x8, 0x95, 0x0, 0x0, @ipv4=@local}]}, 0x123c}], 0x5, &(0x7f000001f780)=[@rights={{0x18, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}, @cred={{0x18, 0x1, 0x2, {0x0, 0xee01}}}, @rights={{0x1c, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}, @rights={{0x30, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff]}}, @rights={{0x10, 0x1, 0x1, [0xffffffffffffffff]}}, @rights={{0x34, 0x1, 0x1, [0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, r0, r2, r4]}}, @rights={{0x30, 0x1, 0x1, [0xffffffffffffffff, r6, r7, 0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff, r8, 0xffffffffffffffff, 0xffffffffffffffff]}}], 0xf0, 0x4000004}, 0x4040810) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4104, 0x1008) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a080)=""/66, 0x42) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/102400, 0x19000) 23:55:50 executing program 4: munmap(&(0x7f0000ffc000/0x4000)=nil, 0x4000) mremap(&(0x7f0000ffc000/0x1000)=nil, 0x1000, 0x1000, 0x3, &(0x7f0000fff000/0x1000)=nil) 23:55:50 executing program 0: r0 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) setsockopt$inet6_IPV6_HOPOPTS(r0, 0x29, 0x36, &(0x7f00000000c0)=ANY=[], 0x8) connect$inet6(r0, &(0x7f00000003c0)={0xa, 0x0, 0x0, @mcast2, 0x4}, 0x1c) setsockopt$SO_BINDTODEVICE(r0, 0x1, 0x19, &(0x7f0000000000)='bridge0\x00', 0x10) perf_event_open(&(0x7f0000000000)={0x1000000002, 0x80, 0x800000000000013, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) write(r0, &(0x7f00000000c0)="8f2a0b65bd8c06dc0304000e0280a7b6072e63e2", 0x14) 23:55:50 executing program 5: socketpair(0x1, 0x3, 0x0, &(0x7f0000000140)) [ 344.504946][T12730] loop3: detected capacity change from 0 to 264192 23:55:50 executing program 4: r0 = socket(0x2, 0xa, 0x0) syz_genetlink_get_family_id$ipvs(&(0x7f0000000080), r0) 23:55:50 executing program 2: r0 = socket$netlink(0x10, 0x3, 0x0) setsockopt$netlink_NETLINK_ADD_MEMBERSHIP(r0, 0x10e, 0x1, &(0x7f0000000000)=0x1b, 0x4) [ 344.743367][T12738] loop3: detected capacity change from 0 to 264192 23:55:50 executing program 3: arch_prctl$ARCH_MAP_VDSO_64(0x2003, 0x101) arch_prctl$ARCH_MAP_VDSO_64(0x2003, 0x7) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:51 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xffffff9e, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) [ 344.946084][T12751] syz-executor.4 uses obsolete (PF_INET,SOCK_PACKET) 23:55:51 executing program 5: r0 = socket$nl_route(0x10, 0x3, 0x0) r1 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000000)={'vlan0\x00', 0x0}) r3 = socket$packet(0x11, 0x2, 0x300) r4 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r4, 0x0) preadv(r4, &(0x7f0000000280), 0x18, 0xd9f, 0x0) ioctl$sock_SIOCGIFINDEX(r3, 0x8933, &(0x7f0000000180)={'macvlan1\x00', 0x0}) sendmsg$nl_route(r0, &(0x7f0000000280)={0x0, 0x0, &(0x7f0000001140)={&(0x7f00000001c0)=@newlink={0x44, 0x10, 0x503, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x4001}, [@IFLA_LINKINFO={0x14, 0x12, 0x0, 0x1, @ipvlan={{0xb}, {0x4}}}, @IFLA_LINK={0x8, 0x5, r5}, @IFLA_MASTER={0x8, 0xa, r2}]}, 0x44}}, 0x0) 23:55:51 executing program 0: syz_emit_ethernet(0x22, &(0x7f0000000000)={@link_local, @dev, @val={@void}, {@can={0xc, {{}, 0x0, 0x0, 0x0, 0x0, "73772010773e2508"}}}}, 0x0) syz_emit_ethernet(0x12, &(0x7f0000000080)={@local, @dev, @val={@void}, {@mpls_mc}}, 0x0) 23:55:51 executing program 4: mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) mlock(&(0x7f0000ff2000/0xe000)=nil, 0xe000) 23:55:51 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) setsockopt$netlink_NETLINK_DROP_MEMBERSHIP(r0, 0x10e, 0x2, &(0x7f0000000040)=0x8000, 0x4) 23:55:51 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001240)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/218, 0xda) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/239, 0xef) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001200)=""/17, 0x11) 23:55:51 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0xfffffff0, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:51 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_CMD_SET_LINK_PRI(r0, &(0x7f0000000100)={0x0, 0x0, &(0x7f00000000c0)={&(0x7f0000000140)=ANY=[], 0x68}}, 0x0) 23:55:51 executing program 4: mmap(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x0, 0x265102309734b43b, 0xffffffffffffffff, 0x0) 23:55:52 executing program 2: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RMKNOD(r0, &(0x7f00000000c0)={0x14}, 0xfffffffffffffe80) 23:55:52 executing program 3: ioctl$BTRFS_IOC_FS_INFO(0xffffffffffffffff, 0x8400941f, &(0x7f0000000140)) pwritev(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000000)="9a7a46c403d4d7fd34438dc47e9242abacb16d267bf27e3116d0", 0x1a}, {&(0x7f0000000040)="25322df003f5076e669303aa712579a3f2140393f817d38e7d6df2a6a5418d7aa7e8", 0x22}, {&(0x7f0000000080)="663e0ee47f6e923b8c3c8cf618e3e7344bc41282625bf8ac112c5966fe59399f50f45c48e58daee9d1daaf3de79ca128b751dbf10b06fa2fff53d04942b6e7c6eb407d833e584340091f6e3bc4516cb72600e512d636ff9ab290d28bc0c98e057eec866adb81f2b8d258472b0a21fb382d465f5d74", 0x75}], 0x3, 0x4, 0x1) setsockopt$inet_sctp6_SCTP_HMAC_IDENT(0xffffffffffffffff, 0x84, 0x16, &(0x7f0000000580)=ANY=[@ANYBLOB="86f5f2aafbb0000300481f09001f0008002058648ddc00"], 0x10) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:52 executing program 0: r0 = socket$inet6_udp(0xa, 0x2, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_hard(r0, 0x8933, &(0x7f0000000000)={'batadv_slave_1\x00'}) 23:55:52 executing program 4: mremap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x4000, 0x3, &(0x7f0000ff5000/0x4000)=nil) madvise(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x0) 23:55:53 executing program 5: clock_gettime(0x0, &(0x7f0000000000)) mlock2(&(0x7f0000ff0000/0x4000)=nil, 0x4000, 0x0) mlock2(&(0x7f0000ffe000/0x2000)=nil, 0x2000, 0x0) munmap(&(0x7f0000ffe000/0x2000)=nil, 0x2000) 23:55:53 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:53 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/216, 0xd8) 23:55:53 executing program 0: mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:55:53 executing program 4: mlock2(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0) mlock2(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x0) 23:55:53 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(r0, 0x8933, &(0x7f0000001ac0)={'wg1\x00'}) 23:55:53 executing program 0: r0 = socket$inet_tcp(0x2, 0x1, 0x0) sendmsg$SEG6_CMD_DUMPHMAC(r0, &(0x7f0000000300)={0x0, 0x0, &(0x7f00000002c0)={0x0, 0x4c}}, 0x2008c854) 23:55:53 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x2, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:53 executing program 4: mbind(&(0x7f0000ff9000/0x4000)=nil, 0x4000, 0x0, &(0x7f0000000080), 0x3ff, 0x6) 23:55:53 executing program 3: r0 = openat$vsock(0xffffff9c, &(0x7f0000001240), 0x101000, 0x0) r1 = syz_genetlink_get_family_id$nl80211(&(0x7f0000000580), 0xffffffffffffffff) r2 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$sock_SIOCGIFINDEX_80211(r2, 0x8933, &(0x7f0000000040)={'wlan1\x00', 0x0}) sendmsg$NL80211_CMD_SET_STATION(r2, &(0x7f0000000140)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000180)={0x2c, r1, 0x1, 0x0, 0x0, {{}, {@val={0x8, 0x3, r3}, @void}}, [@NL80211_ATTR_MAC={0xa}, @NL80211_ATTR_STA_EXT_CAPABILITY={0x4}]}, 0x2c}}, 0x0) sendmsg$NL80211_CMD_JOIN_IBSS(r0, &(0x7f0000001340)={&(0x7f0000001280)={0x10, 0x0, 0x0, 0x20000}, 0xc, &(0x7f0000001300)={&(0x7f00000012c0)={0x24, 0x0, 0xb430c6b905a66136, 0x70bd2c, 0x25dfdbfe, {{}, {@val={0x8, 0x3, r3}, @void}}, [@NL80211_ATTR_MCAST_RATE={0x8, 0x6b, 0x9}]}, 0x24}, 0x1, 0x0, 0x0, 0x4}, 0x40000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/220, 0xdc) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001180)=""/164, 0xa4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/98, 0x62) 23:55:54 executing program 5: r0 = socket$netlink(0x10, 0x3, 0xc) syz_genetlink_get_family_id$tipc(&(0x7f0000002180), r0) 23:55:54 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) setsockopt$netlink_NETLINK_PKTINFO(r0, 0x10e, 0x3, &(0x7f0000000000)=0x1, 0x4) syz_genetlink_get_family_id$devlink(&(0x7f0000000080), r0) 23:55:54 executing program 0: mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) mbind(&(0x7f0000ff9000/0x3000)=nil, 0x3000, 0x1, 0x0, 0x0, 0x1) 23:55:54 executing program 3: getsockopt$inet_dccp_buf(0xffffffffffffffff, 0x21, 0xc0, &(0x7f0000001000)=""/56, &(0x7f0000001040)=0x38) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) r0 = openat$pfkey(0xffffff9c, &(0x7f0000001140), 0x430c80, 0x0) setsockopt$inet_dccp_buf(r0, 0x21, 0xa60e5a0b65e1064e, &(0x7f0000001180)="55a759c22ef89fe74e44e0d0c926d58863514c557d49aa269a0cf3c35db54418bac916eaadbe81cb842611f40774f0aed19d1451cfdb28d33d64d0069d90fbbb6258def02f71bb4934ce2a2749f71796f65410db755a236837c46fc88e7fe22ae11b3c113edbe4bc703a725bd44f3ef57265cde0190fb3a826f58da64042838c5597623262bbd4afea4c5a17f5974beed9b66e88270a3b036a817e131e54584c8751468e61b40c64cf486bf3f803586b39b0c36fd441f6879ca128a21267db78792c26b6ab8ac2cf5a8344a71b08be2e0a0b5fed6bec01743a7a676b7d4aa6f6fac70e495f39e4489132a52b91e239", 0xef) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/102400, 0x19000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/134, 0x86) 23:55:54 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x3, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:54 executing program 4: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f0000000000)='veno\x00', 0x5) 23:55:54 executing program 2: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) madvise(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x3) 23:55:54 executing program 5: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f00000005c0)={0x26, 'skcipher\x00', 0x0, 0x0, 'fpu(xts-cast6-avx)\x00'}, 0x58) 23:55:54 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000003b00)={0x0, 0x0, &(0x7f0000003a40)=[{&(0x7f0000000180)=ANY=[], 0x13b4}], 0x1}, 0x0) 23:55:55 executing program 3: mmap(&(0x7f0000ffe000/0x2000)=nil, 0x2000, 0x1000006, 0x10, 0xffffffffffffffff, 0xd8d7e000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:55:55 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x4, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:55 executing program 4: r0 = shmget$private(0x0, 0x3000, 0x1000, &(0x7f0000ffc000/0x3000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) 23:55:55 executing program 0: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mincore(&(0x7f0000ffb000/0x3000)=nil, 0x3000, &(0x7f0000000000)=""/110) 23:55:55 executing program 2: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, 0x0) 23:55:55 executing program 3: r0 = socket$key(0xf, 0x3, 0x2) ioctl$F2FS_IOC_RESERVE_COMPRESS_BLOCKS(r0, 0x8008f513, &(0x7f0000001000)) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/102389, 0x18ff5) 23:55:55 executing program 5: r0 = socket$inet6(0xa, 0x2, 0x0) setsockopt$sock_int(r0, 0x1, 0xf, &(0x7f0000d1c000)=0x6, 0x271) bind$inet6(r0, &(0x7f0000000040)={0xa, 0x4e20, 0x0, @mcast1, 0x2}, 0x1c) r1 = socket$inet6(0xa, 0x2, 0x0) setsockopt$sock_int(r1, 0x1, 0xf, &(0x7f0000d1c000)=0x6, 0x4) setsockopt$sock_int(r0, 0x1, 0x2, &(0x7f0000000000)=0x2d18f2fc, 0x4) bind$inet6(r1, &(0x7f0000f67fe4)={0xa, 0x4e20}, 0x1c) 23:55:55 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x5, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:56 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) setsockopt$netlink_NETLINK_ADD_MEMBERSHIP(r0, 0x10e, 0x1, &(0x7f0000000000)=0x13, 0x4) 23:55:56 executing program 4: madvise(&(0x7f0000fdc000/0x1000)=nil, 0x1000, 0x12) msync(&(0x7f0000400000/0xc00000)=nil, 0xc00000, 0x0) 23:55:56 executing program 2: mlock2(&(0x7f0000ff9000/0x4000)=nil, 0x4000, 0x0) mremap(&(0x7f0000ffd000/0x1000)=nil, 0x1000, 0x3000, 0x3, &(0x7f0000edb000/0x3000)=nil) 23:55:56 executing program 3: ioctl$TCSETS(0xffffffffffffffff, 0x5402, &(0x7f0000001000)={0x8000, 0x8, 0x5, 0x0, 0x4, "a22d2d80569d2af8cf48c0f7ae4cfa9a1c392d"}) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/215, 0xd7) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001140)=""/51, 0x33) 23:55:56 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x6, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:56 executing program 2: socketpair(0xa, 0x2, 0x80, 0x0) 23:55:56 executing program 0: madvise(&(0x7f0000ffc000/0x1000)=nil, 0x1000, 0xf) 23:55:56 executing program 4: getrandom(&(0x7f0000000000)=""/82, 0x52, 0x0) 23:55:56 executing program 5: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, &(0x7f0000000000)=""/113) mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:55:57 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4092, 0xffc) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/39, 0x27) 23:55:57 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x7, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:57 executing program 2: mbind(&(0x7f0000e26000/0x2000)=nil, 0x2000, 0x3, &(0x7f0000000000)=0x3, 0x4, 0x0) 23:55:57 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0x0, &(0x7f0000001bc0)=ANY=[@ANYBLOB="18"], 0x18}, 0x0) 23:55:57 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_CMD_RESET_LINK_STATS(r0, &(0x7f0000000480)={&(0x7f00000003c0), 0xc, &(0x7f0000000440)={&(0x7f0000000400)={0x28, 0x0, 0x0, 0x0, 0x0, {{}, {}, {0xc, 0x14, 'syz0\x00'}}, ["", "", "", "", "", "", "", ""]}, 0xfffffcdc}}, 0x0) 23:55:57 executing program 5: r0 = open(&(0x7f0000000000)='./bus\x00', 0x141042, 0x0) pwritev2(r0, &(0x7f0000000380)=[{&(0x7f0000000140)='S', 0x1}], 0x1, 0x0, 0x0, 0x0) 23:55:57 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001180)=""/219, 0xdb) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/79, 0x4f) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/229, 0xe5) 23:55:57 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x8, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:57 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) connect$netlink(r0, &(0x7f0000000000)=@proc={0x10, 0x0, 0x25dfdbfe}, 0xc) syz_genetlink_get_family_id$SEG6(&(0x7f0000000080), r0) 23:55:57 executing program 0: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000040), 0x1, 0x0) write$P9_RUNLINKAT(r0, 0x0, 0x0) 23:55:58 executing program 4: mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) madvise(&(0x7f0000cdc000/0x1000)=nil, 0x1000, 0x0) 23:55:58 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/178, 0xb2) 23:55:58 executing program 5: getrandom(&(0x7f0000000000)=""/219, 0xdb, 0x3) 23:55:58 executing program 0: mlock2(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x0) madvise(&(0x7f0000ffa000/0x4000)=nil, 0x4000, 0x0) 23:55:58 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x9, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:58 executing program 4: openat$bsg(0xffffffffffffff9c, &(0x7f0000000000), 0x410d01, 0x0) 23:55:58 executing program 5: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RCLUNK(r0, &(0x7f0000001080)={0x7}, 0x7) write$P9_RREAD(r0, &(0x7f0000000000)={0x1000, 0x75, 0x0, {0xff5, "b3c1d96c23adbe63685ef8c3612f969ba0786f21f73a57d2fd414c1fcf14649694d7f65c66f2282adcd86a38824071e7d8422f48327274fb6627935f2c4e7d5cec0bc1909118a087c88532bf3d25ec8e1abb73179c0f28182c3ffc31fa447dffa32e5be1428d5f2a5b595d38e43446fa6870785def84d1c2801ad5198900901743c37c680e27570edb394061579515fd4db85caf8b4aedb162b076980a4cf604a0a02249f5cab9bfc64742c72b23df01c0376f0aa96e8ce4cc58e75b5b79168b21fa5e08b24afbbb57c5c474d1392ca2e56086c78ea6271ca0da43e3450f700ab4cc9d82f9e2f33c89754c1927302cc3a73b24a82e108442c41461cedafa4bdb3b301802b99ca35a9901cdd8e78782c6f2825410d2a34bef155fad6b8c735fec7a694d34a1890323201f485828cab23bd28ca19282d20ce558ebcfbbdea4af5a38c7e18e9f2a063775c6ba5c4d97bba06b1071338b8e1f64a04d9b8e6dbf7c71f6fe4a3470fa1c0469b0f2ee27a44f0f8b2b58cca2a36ea479ad25a8e42de3e00127f6ef035507210a50fb6113e065b9266fe8aff5f1375c5e47c512f8c99e01e032c82f0c0c3ec9873df1359af1e67d92e0854590b4d16bf31d4388d9fe1992da04c61a6641746fefb431b2acf2366acfb58deaec33640664d1d81ec1e77eaaa1359fb1b23bff14348185cdf98eed84e2decdc0eae22257da34c7de1a99536125dade58da2651c19f981b8e351d8b771d9b983f2007642ba3176334bbbca100eb4d93d09f74c41985cd1d05f0877e8a8276b81cb2b256ef4df1df1ba549f3cc22e418c2c044aba20ea6c3d3518f44fef49807ec0f87cec644124165e4d8916e61447d95e149f287c39910fdbd045b1ce96520426fc8cd1a46b5cfc2028c3ae4e68287bfbfcace4b7ce4e5a8e85515bb23306f286277516d489db028af903c51c4e8007ac89678ffe290070338e558b8bd544a643e35256b09846feb7918f089abedc1c7d3efde2dc4505527bd20f982025362b59e3704f48ac5cebbb23c0a7a2d4b1d9b1244413f40a4322fb3d6e4cc62fde42afc9fed62c5ab1a901aef938d240528c28ba3a2e89f1cfcf202fa9a149994e587c6660a1d1a86f377074ca9ac717ba34b891cc2bcf0678c346de75e866071152176c79164f3c9b06215609132571ff8b2ffa6efe0659a0a074cd10d9a08478d46d3448670b76f759ece9c6b7f2e0c9bc088b3e268c812ea29ec669f84f1b5544f382d3807e770049d711cf0d686369ac2cc72ebee398e0ef78db5c80c7188150a92cbaf27364c9fc44d98b04d8205bf0f5368afc63303fafdbf6a31a862361c8b08e7fb194c7d1e75c3b4564fb70888bb5e5a3a8f1bfc73978fc9277cb504ba646a419458daeaf83955a100faaaf943650aa5590f458626e29b18f631e916fb138c49a09f8705b72bf952d8c5ff2b2cf1373a69759fb6e0b481006d256da94ab8775c0e9505e2a5d5f11b8c75185faf4bc93bd6f9d24b399f6a3eb67861fe66907eed22278dc9854d1cec91ffbc0023c75d76dcc5e67996a9f002e5741124e0e29421fec9142c7825a09f333275e69f676c24062608d3fdaabc5914881ac74cbcc7edde857f2c46a6e58d668ad18586f4c4fd46bed40476f525efa7734c3e534c74236239df19a9b3418082eaf1894ad54e3d6ebecdfa1ff0549197a4e689f1ce96212ff4d87568ded651d992ece0cbfdd5fa6fbeb25d7bdb791ed140b4d84bf8832c748045ebbe7523c9ad0efe3cc4792e398d113cc092e18f6a5c242b1922a5dd5b13a1adf5afd673d869bb19e991c4aa044982308f08f010510b95194a8f6a275da672f90fa159cc728a19132f711ea8558ad2e65b0a63f5ea9e8fc87b154e83ce3060bfa106ecdc75b8e4c47f9a78d5c02d63ccbff9392401b8f4fda12a1f664bd8a1700009b199848f097939e76c8636099de6101f7b1f3bb3ccc75a6e66cd774220adfb4a05f766058503be13d5d88aa9cfec0b61b38d4414c7fce6a7fdbb55623a8785678b56b722fe9245f152f36403c7d3e920f6854e1b8a317ed01e1ad4ad252d4399ed8dbf11c6b1814a7a817889f806c39e554575d5ca484030042a0d02562fb7fbecf86af557764e9a176b6f1aae0f53e34b2bebd61f9613465645de60c35ddb84e07a3fb8df29ea28750d8d2246a5a7f36e40a480ccf1357599aca51e96004e04cba467a0c29ea205edc561ecc16f6ca63123f4ee3f1dcd94dc5f3cad64bddf955f04f6e548880be020f3dcdd75e7e583a204d3a6a2fbc09326c2755fb56883eaf28bfcc6b81f2992615acfc0785750b48bb106a9fdb3c4f25ec994cc0f808ce61197acb1cc2b76a538a1a471156be69bb543aede6784694f91c3fbb1379972587da01f44d0c71fad0474971b48b41e2f588d3b2b342273288674f12d18f34c0ec095b8809071d1e53c4320fbb6f82bee5547a1472c8efe3e116760fd09244c6984e3ac00a750cf34f40171ccd75aa5ac20dc9fdd4296ca9b0f3acda8f9c8b90724ccadd6c8a8e1e89493b39c2dbe7dccd97211e49e691ab9bf973d81fbbc0e86c9c01a376dadbd334a941c64d0f47c2a7dea75a7559ae99a89193ae131ac2de2cafbd102ec7ce147c315ed4eea254fc124ca611a1062aab1bd7c067e8a6b96bcf67b6e8ebf8b8c853d2b0bf890447173fb449692e002ae94b9be0042b988f9aa81fd3b1fbc2d24e39bb45367b36b8befdcfc353b7a4741c42906d10430b672d2782afc92a2e61ee12452f05e7df693ab7d7f58144171f23e134f4c388b48becfc8dc1d45a56e09dfaebd7d8e142913c72efc498447eadf37b3b48541a8b24331e5bc4d274beba1d3179b1130ea158500f7c8f773fc8df7ccef4a63ac545cc13002d7ff9d7087871d8e733e947ce2e8af8d72e73807467800036941d8ca71576b5a9983d79520b3943b37213587be5a64cb3f96e57fadddc15d5896729388ef6922e8dfcc1ea4350005f833e9f1858f790eb5d1f09900c2388ca175b0abc5aa303b63824044fa8b20be4a9e4d23325e05fd9bfc3a80f5002531e249a2f9de493d1863e5593183089c5a1babc2b1262e2bcd75ec7a3d8ac10042d862b8249200ebf3d2e17ec3862761b805e447ec163a15d74bd19e8e637a44a49ab1a6c701e18636794510346b045399e310c590dcfd4980cf851af96a6167a943898d0fa00f255edaad15b0be9017d857259bad8f4df874939ab4abb43a3397134d48ca5c6e03a0170cc83b1b3afc408765ac60728c19be3e0333c0e3b00e917fa05788c8f1a94445f378a9d92cb5432365f8d1f65fadb2fbe0b066945fc5fc9c352a5ad428de47773f3d354fe2d2c3cf246ecd38350f45c2c52262e93f443bd3a12cb1aa8db346bb8b9a997be857cb403ea26f299283a24c4721a95fb44ab7fccc990a32b827c517d269e83d284bba4d461a967609c7288e0b3af41a1d91b695fddd6fde08f8269e78d9f61fd2841530264cdd745324b555edf1e16e37e5ddbf836fb282d2319045d991291ae8b770af9342eb3975ddcacd0c2613e300be129a25c94e89877e47bcef42481d4dfc1bfcab3cf89a8feb219416275cf183b91eaa5c55511f61c52370263d9bc9965f858871cb3f5d08eb82f92b4e3a2d5a4e4b8dc0f0f41e4155f5db83a9a1c9c35fcb0f0eb5809c9020a58eca3b638910e069c8650daa14274469ff222b9c076776610dcc203fdfd520a73eeb3bcb2c1bd21d277b79ca8f6838e7445f35a9ea06ceb77a671d0f99591a262ef493e0117becc10d190913c794ec1c2624dd415df3ef82d8315358649684665cfc5217c6ff86a351c0daa385df2caf085a29de291b2389ea7eee62fe5816aef88f11d9b9575f268be0d21287a48e88389531ec6c8ef5307c0da7a11087cfcc8d8059862a401a9ab9528d2034768d41af263da91b7f5adabe5cd6ef7db454f433362dcd091e90d47eb4d0cff98583be0313daad84533bbf03f1486c8c353910f50eb4a0150e3afa372e39cc21e33e65c80a5fb93f81f4315c5350cdf268c2247bf57c1302316da2559c1e5590c1effb52a37af9f3a0e9378f63129cf80d9cd804b4cee0d73bff89ae56977dade37637b407265705285b5982d3dbeb57a92676eb771f195af8974e58d1efe601429e5f19a69d6c0dc7be0f2705ea00737546e8fdd68a71a022f08bb8028b288143ddfca69a31a1f999c355c8bf8e12d89524ee742abd121e6d56f62b173098efb29ed23a92288cc211239f642e50fba40a46dbd0593f91a1b646f2fc1517da5a384de69ff66897af76fa68e1d3e8032afb9e1c4ce91a58c7ac36efd79bcbb5f876dbf36c0c2d4c9f8e34c0fbca9245221e3bd8acf5f448e56a30fa4373a3ca3ebdc67eea8638ce89cc7eea8d79197242feae0c72ee1d42b9fd938e5625a1da5471af7e14be3e9a61fe4d694e9295b8e57ce284117a006c7cadbf9394e4b532febe310dfe414f987636c187fb7995f58599657063024153b25474e81a73c8fa2dac9f02fa9419e9ddb9c3a65d0d518b7721e82c295409267ced31877434b0fe27b7de460b297392d91784fe58d8426bfea1eb1ce7e1655ebdcbb6ead0418a1d7b117d694ea9d3a818ec24d05e4827caf209d9cdc6cd723a07aed331b86e42178f91276dffad9a9d8590381e23506e7b71df9ea9e3f10d2f9635194c28bb766ee256aaa67675c84373eb36206ec5feca0d0e24d3837de6e6a4ffb4bfa1cedc19eab1a6736edee160d7db9bac07eb15b4520e8a53ff430d630fa366383c1a9a4ee8d03f5d32af9838c214d751ea2c151e8fa965e3b5418b47b9f2d3cb1e1e618e3e683be597eb2885bfb86cc385dc51426738ce261cb3e265a7b130f8b53546b6d8c4fe2e7ac2bc81d5a686d03c6a40ba62f0d11af876a81b1b4a5b19437b62e24c661c3bcfa44efdc76625c0eb87d1a80bc490e3fad9094aced8a13254ef56f04e74d89f230d396a87182538beac2de1c6a18768e16ec32da0af3b7da24e2f280d9069f273643a8001c6bdfa36a26eb58cd67924438a1f3bbf751cf121af79efbf4edb4543149306c8598ae20bb6cd4f0407441ed03488e7b1cae261379e5eed7cace05e65ab0aa8f8c79e19edf1c98124318c76ccad6f82171dcd98c21ec56fec9ff5294968dabcd9090b470c251ec44987ec8b474d085fe5f804afedb5e10d946a9dd1efe28e2bd5eeb2cf95b06384ac7a41e7da8b340deff0b2b03629a78fff2db6b9ad54816b32269bbe72cfa788b587d0701c9805767f6834dcf6dd45952b116ee5d83611091a69b3aaabd834475e2fea2eb5d011caaa87f9b9a5a1b9d0663dd18f244a7280818f5f9caceae5db89b4e53ca16561ebbffc013fab86a65a8e65a381fdfa57a0e66456988af3d9a64af5bd93477c8ab66d324d322fe7a1956d6b1d844db61cf952447374ca641a7790aa6bc226a87350d27e445b2495d34860817092c8a4dca1d4d69b40aa5e6851f75579a72cd8e51256cbf857872f0959124b9e8b24674bf413503cf0e8309a364e8b49d81b579771f2f35534038393001bf42e630110917b4a1b197375eb7fef1bb93d204fd6c9322a8aae549d72c94d3553edb0c5bceb0ce88b9cba9b4bddfa9e8a81b5fdbbb8910e985ed8d90c1d9058f5e40320b5d1c88a57ba1e090bfbd43e91f42427647dcafbed34d2c80c6773b09915811ade55d082174a7f96f6e321083563ed4207af1931b18815d2f2a1bda087e25ffe5de6369245cd3daaec41084a5f809bf8a51573ea427d9913"}}, 0x1000) 23:55:59 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000020c0)=""/4105, 0x1009) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/72, 0x48) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a080)=""/102392, 0xfffffffffffffcc8) 23:55:59 executing program 0: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f0000000000)='lp\x00', 0x3) 23:55:59 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xf, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:55:59 executing program 2: mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) mremap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x4000, 0x3, &(0x7f0000ff5000/0x4000)=nil) 23:55:59 executing program 4: pkey_mprotect(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x1, 0xffffffffffffffff) mlock2(&(0x7f0000ffd000/0x1000)=nil, 0x1000, 0x0) 23:55:59 executing program 5: mremap(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x3000, 0x0, &(0x7f0000f97000/0x3000)=nil) 23:55:59 executing program 0: r0 = getpid() tkill(r0, 0x1c) 23:55:59 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/2, 0x2) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001280)=""/191, 0xbf) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001140)=""/136, 0x88) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/154, 0x9a) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001200)=""/82, 0x52) 23:56:00 executing program 2: mlock(&(0x7f0000ff2000/0xe000)=nil, 0xe000) mlock2(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x0) 23:56:00 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x60, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:00 executing program 4: mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) munlock(&(0x7f0000fdb000/0x4000)=nil, 0x4000) mbind(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0, 0x3) 23:56:00 executing program 0: syz_emit_ethernet(0xaa, &(0x7f0000000080)={@multicast, @random="514e60b93912", @val={@void, {0x8100, 0x4}}, {@ipv4={0x800, @gre={{0x15, 0x4, 0x0, 0x0, 0x98, 0x0, 0x0, 0x0, 0x2f, 0x0, @broadcast, @remote, {[@noop, @ra={0x94, 0x4}, @cipso={0x86, 0x38, 0x0, [{0x0, 0x2}, {0x0, 0xc, "dc77381abfbe715bbbf8"}, {0x0, 0x5, "712dbb"}, {0x0, 0x12, "c72bdfc3e595e3d53ba0308a1c4361ed"}, {0x0, 0x5, "65c773"}, {0x0, 0x8, "6db2a48a97ef"}]}]}}}}}}, 0x0) 23:56:00 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$NL80211_CMD_GET_STATION(r0, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000080)={0x14, 0x0, 0x1, 0x0, 0x0, {{}, {@void, @void}}}, 0x14}}, 0x0) 23:56:00 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xb7, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:00 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/9, 0x9) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/2, 0x2) 23:56:00 executing program 2: r0 = socket$netlink(0x10, 0x3, 0x4) sendmsg$TIPC_CMD_GET_MEDIA_NAMES(r0, &(0x7f0000000200)={0x0, 0x0, &(0x7f00000001c0)={0x0}}, 0x0) 23:56:00 executing program 4: mbind(&(0x7f0000ffa000/0x3000)=nil, 0x3000, 0x0, 0x0, 0x1, 0x0) 23:56:00 executing program 0: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RCLUNK(r0, &(0x7f0000001080)={0x7}, 0x7) write$P9_RREAD(r0, &(0x7f0000000000)={0x1001, 0x75, 0x0, {0xff6, "b3c1d96c23adbe63685ef8c3612f969ba0786f21f73a57d2fd414c1fcf14649694d7f65c66f2282adcd86a38824071e7d8422f48327274fb6627935f2c4e7d5cec0bc1909118a087c88532bf3d25ec8e1abb73179c0f28182c3ffc31fa447dffa32e5be1428d5f2a5b595d38e43446fa6870785def84d1c2801ad5198900901743c37c680e27570edb394061579515fd4db85caf8b4aedb162b076980a4cf604a0a02249f5cab9bfc64742c72b23df01c0376f0aa96e8ce4cc58e75b5b79168b21fa5e08b24afbbb57c5c474d1392ca2e56086c78ea6271ca0da43e3450f700ab4cc9d82f9e2f33c89754c1927302cc3a73b24a82e108442c41461cedafa4bdb3b301802b99ca35a9901cdd8e78782c6f2825410d2a34bef155fad6b8c735fec7a694d34a1890323201f485828cab23bd28ca19282d20ce558ebcfbbdea4af5a38c7e18e9f2a063775c6ba5c4d97bba06b1071338b8e1f64a04d9b8e6dbf7c71f6fe4a3470fa1c0469b0f2ee27a44f0f8b2b58cca2a36ea479ad25a8e42de3e00127f6ef035507210a50fb6113e065b9266fe8aff5f1375c5e47c512f8c99e01e032c82f0c0c3ec9873df1359af1e67d92e0854590b4d16bf31d4388d9fe1992da04c61a6641746fefb431b2acf2366acfb58deaec33640664d1d81ec1e77eaaa1359fb1b23bff14348185cdf98eed84e2decdc0eae22257da34c7de1a99536125dade58da2651c19f981b8e351d8b771d9b983f2007642ba3176334bbbca100eb4d93d09f74c41985cd1d05f0877e8a8276b81cb2b256ef4df1df1ba549f3cc22e418c2c044aba20ea6c3d3518f44fef49807ec0f87cec644124165e4d8916e61447d95e149f287c39910fdbd045b1ce96520426fc8cd1a46b5cfc2028c3ae4e68287bfbfcace4b7ce4e5a8e85515bb23306f286277516d489db028af903c51c4e8007ac89678ffe290070338e558b8bd544a643e35256b09846feb7918f089abedc1c7d3efde2dc4505527bd20f982025362b59e3704f48ac5cebbb23c0a7a2d4b1d9b1244413f40a4322fb3d6e4cc62fde42afc9fed62c5ab1a901aef938d240528c28ba3a2e89f1cfcf202fa9a149994e587c6660a1d1a86f377074ca9ac717ba34b891cc2bcf0678c346de75e866071152176c79164f3c9b06215609132571ff8b2ffa6efe0659a0a074cd10d9a08478d46d3448670b76f759ece9c6b7f2e0c9bc088b3e268c812ea29ec669f84f1b5544f382d3807e770049d711cf0d686369ac2cc72ebee398e0ef78db5c80c7188150a92cbaf27364c9fc44d98b04d8205bf0f5368afc63303fafdbf6a31a862361c8b08e7fb194c7d1e75c3b4564fb70888bb5e5a3a8f1bfc73978fc9277cb504ba646a419458daeaf83955a100faaaf943650aa5590f458626e29b18f631e916fb138c49a09f8705b72bf952d8c5ff2b2cf1373a69759fb6e0b481006d256da94ab8775c0e9505e2a5d5f11b8c75185faf4bc93bd6f9d24b399f6a3eb67861fe66907eed22278dc9854d1cec91ffbc0023c75d76dcc5e67996a9f002e5741124e0e29421fec9142c7825a09f333275e69f676c24062608d3fdaabc5914881ac74cbcc7edde857f2c46a6e58d668ad18586f4c4fd46bed40476f525efa7734c3e534c74236239df19a9b3418082eaf1894ad54e3d6ebecdfa1ff0549197a4e689f1ce96212ff4d87568ded651d992ece0cbfdd5fa6fbeb25d7bdb791ed140b4d84bf8832c748045ebbe7523c9ad0efe3cc4792e398d113cc092e18f6a5c242b1922a5dd5b13a1adf5afd673d869bb19e991c4aa044982308f08f010510b95194a8f6a275da672f90fa159cc728a19132f711ea8558ad2e65b0a63f5ea9e8fc87b154e83ce3060bfa106ecdc75b8e4c47f9a78d5c02d63ccbff9392401b8f4fda12a1f664bd8a1700009b199848f097939e76c8636099de6101f7b1f3bb3ccc75a6e66cd774220adfb4a05f766058503be13d5d88aa9cfec0b61b38d4414c7fce6a7fdbb55623a8785678b56b722fe9245f152f36403c7d3e920f6854e1b8a317ed01e1ad4ad252d4399ed8dbf11c6b1814a7a817889f806c39e554575d5ca484030042a0d02562fb7fbecf86af557764e9a176b6f1aae0f53e34b2bebd61f9613465645de60c35ddb84e07a3fb8df29ea28750d8d2246a5a7f36e40a480ccf1357599aca51e96004e04cba467a0c29ea205edc561ecc16f6ca63123f4ee3f1dcd94dc5f3cad64bddf955f04f6e548880be020f3dcdd75e7e583a204d3a6a2fbc09326c2755fb56883eaf28bfcc6b81f2992615acfc0785750b48bb106a9fdb3c4f25ec994cc0f808ce61197acb1cc2b76a538a1a471156be69bb543aede6784694f91c3fbb1379972587da01f44d0c71fad0474971b48b41e2f588d3b2b342273288674f12d18f34c0ec095b8809071d1e53c4320fbb6f82bee5547a1472c8efe3e116760fd09244c6984e3ac00a750cf34f40171ccd75aa5ac20dc9fdd4296ca9b0f3acda8f9c8b90724ccadd6c8a8e1e89493b39c2dbe7dccd97211e49e691ab9bf973d81fbbc0e86c9c01a376dadbd334a941c64d0f47c2a7dea75a7559ae99a89193ae131ac2de2cafbd102ec7ce147c315ed4eea254fc124ca611a1062aab1bd7c067e8a6b96bcf67b6e8ebf8b8c853d2b0bf890447173fb449692e002ae94b9be0042b988f9aa81fd3b1fbc2d24e39bb45367b36b8befdcfc353b7a4741c42906d10430b672d2782afc92a2e61ee12452f05e7df693ab7d7f58144171f23e134f4c388b48becfc8dc1d45a56e09dfaebd7d8e142913c72efc498447eadf37b3b48541a8b24331e5bc4d274beba1d3179b1130ea158500f7c8f773fc8df7ccef4a63ac545cc13002d7ff9d7087871d8e733e947ce2e8af8d72e73807467800036941d8ca71576b5a9983d79520b3943b37213587be5a64cb3f96e57fadddc15d5896729388ef6922e8dfcc1ea4350005f833e9f1858f790eb5d1f09900c2388ca175b0abc5aa303b63824044fa8b20be4a9e4d23325e05fd9bfc3a80f5002531e249a2f9de493d1863e5593183089c5a1babc2b1262e2bcd75ec7a3d8ac10042d862b8249200ebf3d2e17ec3862761b805e447ec163a15d74bd19e8e637a44a49ab1a6c701e18636794510346b045399e310c590dcfd4980cf851af96a6167a943898d0fa00f255edaad15b0be9017d857259bad8f4df874939ab4abb43a3397134d48ca5c6e03a0170cc83b1b3afc408765ac60728c19be3e0333c0e3b00e917fa05788c8f1a94445f378a9d92cb5432365f8d1f65fadb2fbe0b066945fc5fc9c352a5ad428de47773f3d354fe2d2c3cf246ecd38350f45c2c52262e93f443bd3a12cb1aa8db346bb8b9a997be857cb403ea26f299283a24c4721a95fb44ab7fccc990a32b827c517d269e83d284bba4d461a967609c7288e0b3af41a1d91b695fddd6fde08f8269e78d9f61fd2841530264cdd745324b555edf1e16e37e5ddbf836fb282d2319045d991291ae8b770af9342eb3975ddcacd0c2613e300be129a25c94e89877e47bcef42481d4dfc1bfcab3cf89a8feb219416275cf183b91eaa5c55511f61c52370263d9bc9965f858871cb3f5d08eb82f92b4e3a2d5a4e4b8dc0f0f41e4155f5db83a9a1c9c35fcb0f0eb5809c9020a58eca3b638910e069c8650daa14274469ff222b9c076776610dcc203fdfd520a73eeb3bcb2c1bd21d277b79ca8f6838e7445f35a9ea06ceb77a671d0f99591a262ef493e0117becc10d190913c794ec1c2624dd415df3ef82d8315358649684665cfc5217c6ff86a351c0daa385df2caf085a29de291b2389ea7eee62fe5816aef88f11d9b9575f268be0d21287a48e88389531ec6c8ef5307c0da7a11087cfcc8d8059862a401a9ab9528d2034768d41af263da91b7f5adabe5cd6ef7db454f433362dcd091e90d47eb4d0cff98583be0313daad84533bbf03f1486c8c353910f50eb4a0150e3afa372e39cc21e33e65c80a5fb93f81f4315c5350cdf268c2247bf57c1302316da2559c1e5590c1effb52a37af9f3a0e9378f63129cf80d9cd804b4cee0d73bff89ae56977dade37637b407265705285b5982d3dbeb57a92676eb771f195af8974e58d1efe601429e5f19a69d6c0dc7be0f2705ea00737546e8fdd68a71a022f08bb8028b288143ddfca69a31a1f999c355c8bf8e12d89524ee742abd121e6d56f62b173098efb29ed23a92288cc211239f642e50fba40a46dbd0593f91a1b646f2fc1517da5a384de69ff66897af76fa68e1d3e8032afb9e1c4ce91a58c7ac36efd79bcbb5f876dbf36c0c2d4c9f8e34c0fbca9245221e3bd8acf5f448e56a30fa4373a3ca3ebdc67eea8638ce89cc7eea8d79197242feae0c72ee1d42b9fd938e5625a1da5471af7e14be3e9a61fe4d694e9295b8e57ce284117a006c7cadbf9394e4b532febe310dfe414f987636c187fb7995f58599657063024153b25474e81a73c8fa2dac9f02fa9419e9ddb9c3a65d0d518b7721e82c295409267ced31877434b0fe27b7de460b297392d91784fe58d8426bfea1eb1ce7e1655ebdcbb6ead0418a1d7b117d694ea9d3a818ec24d05e4827caf209d9cdc6cd723a07aed331b86e42178f91276dffad9a9d8590381e23506e7b71df9ea9e3f10d2f9635194c28bb766ee256aaa67675c84373eb36206ec5feca0d0e24d3837de6e6a4ffb4bfa1cedc19eab1a6736edee160d7db9bac07eb15b4520e8a53ff430d630fa366383c1a9a4ee8d03f5d32af9838c214d751ea2c151e8fa965e3b5418b47b9f2d3cb1e1e618e3e683be597eb2885bfb86cc385dc51426738ce261cb3e265a7b130f8b53546b6d8c4fe2e7ac2bc81d5a686d03c6a40ba62f0d11af876a81b1b4a5b19437b62e24c661c3bcfa44efdc76625c0eb87d1a80bc490e3fad9094aced8a13254ef56f04e74d89f230d396a87182538beac2de1c6a18768e16ec32da0af3b7da24e2f280d9069f273643a8001c6bdfa36a26eb58cd67924438a1f3bbf751cf121af79efbf4edb4543149306c8598ae20bb6cd4f0407441ed03488e7b1cae261379e5eed7cace05e65ab0aa8f8c79e19edf1c98124318c76ccad6f82171dcd98c21ec56fec9ff5294968dabcd9090b470c251ec44987ec8b474d085fe5f804afedb5e10d946a9dd1efe28e2bd5eeb2cf95b06384ac7a41e7da8b340deff0b2b03629a78fff2db6b9ad54816b32269bbe72cfa788b587d0701c9805767f6834dcf6dd45952b116ee5d83611091a69b3aaabd834475e2fea2eb5d011caaa87f9b9a5a1b9d0663dd18f244a7280818f5f9caceae5db89b4e53ca16561ebbffc013fab86a65a8e65a381fdfa57a0e66456988af3d9a64af5bd93477c8ab66d324d322fe7a1956d6b1d844db61cf952447374ca641a7790aa6bc226a87350d27e445b2495d34860817092c8a4dca1d4d69b40aa5e6851f75579a72cd8e51256cbf857872f0959124b9e8b24674bf413503cf0e8309a364e8b49d81b579771f2f35534038393001bf42e630110917b4a1b197375eb7fef1bb93d204fd6c9322a8aae549d72c94d3553edb0c5bceb0ce88b9cba9b4bddfa9e8a81b5fdbbb8910e985ed8d90c1d9058f5e40320b5d1c88a57ba1e090bfbd43e91f42427647dcafbed34d2c80c6773b09915811ade55d082174a7f96f6e321083563ed4207af1931b18815d2f2a1bda087e25ffe5de6369245cd3daaec41084a5f809bf8a51573ea427d9913ed"}}, 0x1001) 23:56:00 executing program 5: socket$inet_tcp(0x2, 0x1, 0x0) sync() 23:56:01 executing program 2: r0 = shmget$private(0x0, 0x4000, 0x0, &(0x7f0000ffb000/0x4000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) pkey_mprotect(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x0, 0xffffffffffffffff) mbind(&(0x7f0000ffe000/0x2000)=nil, 0x2000, 0x1, 0x0, 0x0, 0x0) 23:56:01 executing program 4: openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000300)='./cgroup.net/syz0\x00', 0x200002, 0x0) 23:56:01 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x300, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:01 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/102, 0x66) 23:56:01 executing program 0: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x180000f, 0x12, r0, 0x0) preadv(r0, &(0x7f0000000280), 0x18, 0xd9f, 0x0) flistxattr(r0, 0x0, 0x0) 23:56:01 executing program 5: mlock2(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0) munlock(&(0x7f0000ffc000/0x4000)=nil, 0x4000) mlock2(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x0) 23:56:01 executing program 2: ioperm(0x0, 0x7, 0x0) 23:56:01 executing program 4: r0 = shmget$private(0x0, 0x2000, 0x0, &(0x7f0000ffb000/0x2000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffd000/0x1000)=nil, 0x1000) 23:56:02 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x500, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:02 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/2, 0x2) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/85, 0x55) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001180)=""/216, 0xd8) 23:56:02 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0xfffffd2e, &(0x7f0000000180)=[@rights={{0x10}}], 0x10}, 0x0) 23:56:02 executing program 5: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_TLS_TX(r0, 0x6, 0x1, &(0x7f0000000040)=@gcm_128={{}, "5c23d682f9cd9bd4", "7416785e571a0c4d732ebdb4f94e0112", "93c23166", "83354b58142378a5"}, 0x28) 23:56:02 executing program 2: syz_emit_ethernet(0xe81, &(0x7f0000000000)={@local, @random="73610118d31b", @void, {@llc_tr={0x11, {@llc={0x0, 0x0, 'U', "8325ef4c1491b15123843e750e22486eb9d0f2851c28eee54b9bbe39ec928d0fcefc6719ff023c183dac68e8cd78eba9b130d90c1a1167d85fce4558629f7bef017b24cd6fd10827e8af6806a1647cce7ddac67613f8f90237d1527a9bbfaa0ec3847d3c37b715c4ccdcbfd6640b73b67453394b7bee4f79817d01d28af86f6e2239301c8499a0302dd5ea8a6291bbf3bd723f93d4afb1c60525659cc6d49b708bd5d3f45eb664c8e34c06da47e4bd33deaa229bbab76704dabc0a90331a923c981b28811a2032941949682e8b335f2d797088c0727c727774596ea27761a3013718523f754c8f8cab7bc8e7b6fbd921cfc7b4fb87b5d5435b4c84cee4ff516aa27fcae920350639e0b7c617ce3342de92e526b472ebb1e3d67f280ce6a6eb95fe54caa7f4569ded376d5704fdf19ef13fb01b1f2b3f6ef71c585ea71a62dd31a322294099232b65a048d8486e394f386a02f283ee8bd64a2a4885a86278849c10ff846964f4c90dd22c65bcaf1a3b7ba3240caf2b8a17e2118dd8bff7bcf00a1cb796ca715f0197f5a8ca6973ee8ef93db6c379eb5cbb01ed3039f6fb2f21c1b6f7228eee220e2d9cd394b566144058da782fd2d3d98d96180565cfac7390dfc5ddeaa93b4cdc851e13d1c6a39c2881fb597dbccd5289f94510a10e040b76c74135e836a1088782a754fa575e1b725d696b14a2818019c5e2130d31805296f25882fe58e2a3e46b1991de375e29be4cd419b8f95bffe7ddbaad58d094b7815911dad0699818c052bf171c1e5b7cee3569a578c4d40b790288c5c94c94e0c396583f176a938c4087cb374173e15d54fc92f403c09e63a82eee8a4e2d6a8214d25e5a4e06159fddface68bd94cbaae73d6d0384a19252da14a89166514f3d2a0a780b3d0cb267a3548f7975a637e365a23bf6c4b1dcd93860653a002d09efdd8f756283334bf484a4b05636db5a77fe9f9b7c6e3687e82445feee4d2f75112304dd57b46789e89e5a72d8dccadb1f290432ff2866978bc55d031fe65cbe130b4abb2c7502556d83b7ce309a049fbfff343980c8bde653cf8da80df0c02bf98bfe333d5f7359e648fd12e8ed54153d86749c7a1eb90f4aa8bf2724211251f0665768fd9bd2198e94002723dce403f3e5faca9a9b43e50a8f34ab2dba9380ff7e264ebbe5ed116497257d50ac80476d02925e0d3a9f2068d09bd44f05267332c7f67c5cde24f5a49c89e5b4a21d61ad61a6b7850ec1f2c683b37af775a33ab640e69238ab78f72f3f1181ff956443ee2e6abb942a694b215ec0acee208f09151408c464375dd4083fd8a93e836f665827489268e572be213eaeec35ff9953df140e9e20e6d22a51f5f67163abfd4ab08cc628ea06e0f2a1cbafe74b97d386cb2a46bcc9c99ac69823bb05cd89594a4c0d48017ea5615f116e70e708279534c181b62c5c0fb7dff4806b613cc257d56c526577630f334de67c610378b89ac8a51d4b5286245906ebcfc6d2f9ebc5af7a7262b1e5b96824a287da10c832e0ef7abb262fb2d13d4c6d8c3788a68519aef35de792635d676e2a297a398a812dd2de605a155d651d4205d4ea2cb2876450327e9c1034563a23dd8257373e8436d5e206738187eea6d9b21942cb9616d12029eca98c0afc7f837131c8d74b4c2945068487a9d2ffbdf58ba82af7ee6102ec5d12a6fdc824d5c07d362d63f76ceef17b2b86a2e06ffa129c1c0d16a9caca443b1d821222c1782504659e88d8b5fa3a74bb04d165f6b94796f65a295df2cfb7ec6d653c817aa673fef989f606fb934828dc83ab84b1f155e3b51fc61ee3810d32601d339a9297a004397f5aae6b3768f8702fbc2cca991bec40ef39df4293baf1aa504b7aedbbe5cb48d2e6b855aad9bac52d8e27e70fd6a75a560aabccd1a0efaff4a6f86fb7901bfb35447967b1123af19125f1d7b64db7283c6226df976b5952fcd433177467ebc4fb0e4ec5d854b689e799ac066fc8b8dda97a1322882abaddd00d1ccbd3b169e6c570852a96d19e503a6471f70ee31b96af1884cb93974798e394e4711f26c6277c79fd14d434b4548e03dbec1a7a5d071ce10515cd9b5322e30bb1a161c1955097048c4d04818421afbabd9bb9a76516e79d1d3cf8e869df7699fccf42dba656a2484aedfbe4cbf532c973de4faeb3d7a2c77a7562ec70706eeb91f770139491a255c5b737612241ff3d196dbde896faaae305acb5e8f5bf9819c30cbc3ae79b283bd1b3c95fe437671a1415b35408874ea07012a0f7e603c6ac348846214517415e3240009321a5db51b5b04fab11875c7107d03c1d64a068f43424249dca182bb41bc1a73d88a5a483f88d1d6037b296f4fa137452c7183bcc53142b125093ee72acf31102e5e00d83de5917413ea16f6bf69fd98a2e86e29ec2d966390d95cf3a9ab19e71f7a1ae41f901b425fab0542f01616406b35065c2591510f7fcb53e5a663ceab0a2c6a36af9587b13dbd71b2e1a5d6e2e6d2dadb9b73d1f2ad92ded33ea4781fe6df0884998bac5ce83d04e91aa4cda58f772f2faee499fcde5e03a9a336867de17f6134f5a8c090c2fa1a84c1f8ffb727ea45322ff9193c24d3483839800e62aa3fa91fe107d53523042c5862da06ab5cd4974e894ba88b14d917d559c035ac8d369af4b5d25de29d764de5f41b34e33f33ed876e44c5053e490e10bdd3e39358e945c95bece4010deb9520af7af7b99e7d9f01f70b472e9a80a994f4aa4ec2f17f4a662b362ebd26ca69e993e7e9401b1da8705f296ea323c73e5e8d3a7b1147cbfabd47579271d6149f8f619311df8c4f475e2586e69a0e9f6bea2f4d9b61b909aea11c9c8dec8d4a630517cee66a48e73d3c036cd09e4f9a048a159b12e0c7fa8911fb1c5213ac0884671ff7ddec89751846cbbb8e08bf6004a4ba67f818ead8575cee608c3fdd401c13faf0004ba00fa02c4f1bb4d9e5cc7a53499241080932e5e11bdb839f8d835d2a0bf91e950091a938dcd5258faa9d38b0f73288536aaff13e8c7e4693c88f058f7cbfef0cb3941544042cd3872bb79baa31779157074f37cf2e4a134e64e8f74e7b793262ef526ad20a17b0928ac07f423bec00e5fd14ff3043424097a70f7ab0a61eb9bd332dea0daebfa8331eaae05d0da3f11b6a68d2b3cb64141fbb998e5edb90fc516b4e5b3e0f99917f1358cfe14b7c16fa69d69786e6f75cea15380ebb9b6682c7d33cb673d26f4db2e5bc318dd458ef14c859bf6b21a4d0e4785690b3e40323c5d93624654f818fe2fd08fc2e0239eefd66946927e6e70dddb3b4a304bad0b8534df1248cee4f6ffc0b2125b277c99b1a681a465fc1c6cce297678f5c09207527ead41e8154edce21225c668bce74190564092632c479220dccaf765355c4e817ca89dfa013166b24e1cc38a8c5f32dd07c24c91aecc4bd9681363c5d93312eb9415c8157b847764821ad1120de89ebdca288625bd9ef5ce396a728d22c42875dba8453788bfbdd5570ced4c470ebcb36e3ce129feffc9245a96c80e4784297205f57f030f890695268c9ba4c22bf34553aa117a72ae3aaaf5aa8897f5c3325a567f8d88e823e25e77abedcf365da2984472d92e1aa012c748d5f95c575bd98fa3260ca1e948057f4bbb6b52dee5f246b81d3e37bbcd1f356079c986db124096b4cbdf28eaecd811c6d1faed2425642616cfca231197c2bfd467e263d816e23e3f1955659bc92550c8c9bf194e72c114d2263f609adb7017a39b6c38673ac60a27a8c5ff1fe4281e16dc14430bb4dddc2e021d6be10af564864fde02398d63eddd02c410826a1aea362fb9985ffd43937fc273d9d334bd6f3db8ec71d29ed1eec7e4bc13f210f6ef770df682014a4a5e20dbbc2efe6d29f95e4765e51746fe87ecb091226bcb373cdfd4506c25c09999e7f97271e8b1beece3b601835c5552213a7958311bedb76257fc9fab55b5d1912ba67292bd0d2c5dcf6e56f73121f875ca2213b319152443b2f6dac937966d9036305148572b8a0139e4a0580ceeaa08fa9dd11f3055e4116bec77dd3d9c81e6331e434e9860ba796547bdb3a38d51e259e236074a0673f11b987fbfa866072ec3da0f0780e8d86dd631d5fd5a81ae1ea8346c9359b2da9fe7335d4d5b062a9d746e3a436e90c10359610c60f1163a12bc414aec4fd70ab61699ab067fd23e0a6e8268c02cee384360ae257a2b6750c240c0ab8928b017d0950320a959142e282f5a48e85b8531d2ba6e722cde4fccc607bdd6be60651f771621d1f1454a230649384240eeb7a5a0504399299f38ab2daeaf0feef55f154107b4c90e6cfa131c4ac19f15cf11bbf1cdc98ac2707e2bad3a71ddfb527ae38469bcbb9e05edd467b2ac4c11b2e2397fd97a04224d60097385b53461d25dc0b08ed5886384ff34feb30b1743cd6b00dabcf3846ca070f7d866c0a72c727abf31245217f31046259654321051a85ccebbc714f4d71b82f6aa55cf7cf850856823294184b4e34cc8663ce76b286179e73a18b0b9395f9c9cde695496253046a188d5534e3185553c51e186655c841297df1df9fc841c62107d23c4e8048a523f010c20c874eded7c22e88021456499c7ba6b013b88e3201e56d0f45967cc83a348afcfb27ee1bc2bfbc82429b7c855c9a5c7f4240a7ea83801080e49c4aa08a1dccf09dbf827e3cb2bf02289e322b2cf52f9f4269cad3ee9db0007d59226c60033ffc44b8b0cbadd4c89f79fdc687b7441cbcea1d3e40474c11843ceb8ddea1f19532ae62ae2e7f9f06df7261c12904aa3668f59e4b8d6216f770b3d333185ce57d75c9fda227102227fd95364399fd78ea07b4a481409bcf0b967e62966cc9f80b2a2de2c6d89122cdba718d323da86a207ca9a90a38e55c3030d069c7e468a5227908ef6d6e183cffcaca22e85eabf06cf9307f2bfd7389633178eaf62f704b2779db9a5eb2490d35833cb68ec63c01633e11d22f59b0b245755147bf83e38afedc94e978e0dbe93c40b38c8f78e87fda9bc2fa3941ccee83c1311798fd20ce03f73faa3ddbdb3a78470cf76b3e34b028af584076077a50cec9cabb293398364561a9d7fb0dc66193548ef30175799bba272f02adad981e40a5fb5ff4287f28a639cc0e61d070abefa5a84bd6f828a6f5cec5485628e15a89f7ce51b7c28d25257309ec5dfccf26c3017210d44ed779b21611e0f594e1f3c945cd4a5"}}}}}, 0x0) 23:56:02 executing program 4: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) ioctl$BTRFS_IOC_INO_LOOKUP(r0, 0xd0009412, 0x0) 23:56:02 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x600, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:02 executing program 3: ioctl$FS_IOC_FIEMAP(0xffffffffffffffff, 0xc020660b, &(0x7f0000001000)={0x8, 0x81, 0x6, 0x200, 0x8, [{0x400, 0x5f, 0xffffffffffffff01, '\x00', 0x4}, {0x776, 0x608a608, 0x3, '\x00', 0x1008}, {0x425c903, 0x7, 0xff, '\x00', 0x8}, {0x4, 0x80, 0x2cd6, '\x00', 0xc00}, {0x4, 0xe1, 0x5, '\x00', 0x800}, {0x1ff, 0x4, 0x0, '\x00', 0x1002}, {0x8, 0x0, 0x0, '\x00', 0x3900}, {0x200, 0x1, 0x20, '\x00', 0x1000}]}) r0 = openat$bsg(0xffffff9c, &(0x7f0000001200), 0x4000, 0x0) ftruncate(r0, 0x7) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x60) 23:56:02 executing program 0: r0 = socket$netlink(0x10, 0x3, 0x9) sendmsg$NL80211_CMD_STOP_NAN(r0, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000140)={&(0x7f0000000540)=ANY=[@ANYBLOB="13eb"], 0x1c}}, 0x0) 23:56:03 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000001c00)={0x0, 0x0, 0x0, 0x0, 0x0, 0x18}, 0x0) 23:56:03 executing program 5: r0 = socket$netlink(0x10, 0x3, 0x9) bind$netlink(r0, &(0x7f0000000040)={0x10, 0x0, 0x0, 0x10}, 0xc) 23:56:03 executing program 4: r0 = socket$netlink(0x10, 0x3, 0x6) syz_genetlink_get_family_id$tipc(&(0x7f0000000000), r0) 23:56:03 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002480)=""/4122, 0x4f5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000034c0)=""/102384, 0x18ff0) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/9, 0x9) 23:56:03 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x700, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:03 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000003b00)={0x0, 0x0, &(0x7f0000003a40)=[{0x0, 0x13b4}], 0x1}, 0x0) 23:56:03 executing program 2: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) msync(&(0x7f0000ffd000/0x1000)=nil, 0x1000, 0x4) 23:56:03 executing program 5: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) 23:56:03 executing program 4: mbind(&(0x7f0000fff000/0x1000)=nil, 0x1000, 0x0, &(0x7f0000000040), 0x8000, 0x0) 23:56:04 executing program 0: mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) mlock2(&(0x7f0000ff6000/0x4000)=nil, 0x4000, 0x0) mlock(&(0x7f0000ff2000/0xe000)=nil, 0xe000) 23:56:04 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x900, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:04 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/49, 0x31) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/58, 0x3a) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/21, 0x15) 23:56:04 executing program 5: shmat(0x0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) munmap(&(0x7f0000ffc000/0x4000)=nil, 0x4000) 23:56:04 executing program 2: mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) fork() mbind(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0, 0x3) 23:56:04 executing program 4: r0 = socket$netlink(0x10, 0x3, 0xf) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f00000006c0)={&(0x7f0000000600)={0x10, 0x0, 0x0, 0x1}, 0xc, &(0x7f0000000680)={0x0}}, 0x0) 23:56:04 executing program 0: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RVERSION(r0, 0x0, 0xfffffffffffffcf5) 23:56:04 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xf00, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:05 executing program 5: r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) ioctl$TUNSETIFF(r0, 0x400454ca, &(0x7f0000000300)={'ipvlan0\x00'}) 23:56:05 executing program 3: r0 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) flistxattr(r0, &(0x7f00000000c0)=""/214, 0xd6) preadv(r0, &(0x7f0000000280), 0x0, 0xd9f, 0x0) r1 = openat$ptmx(0xffffffffffffff9c, &(0x7f0000000040), 0x41, 0x0) write$binfmt_aout(r1, &(0x7f00000000c0)=ANY=[], 0xff2e) ppoll(&(0x7f0000000000)=[{r1, 0x4}], 0x1, 0x0, 0x0, 0x0) ioctl$TIOCSETD(r1, 0x5423, &(0x7f0000000080)) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4101, 0x1005) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) r2 = openat$dlm_control(0xffffff9c, &(0x7f00000001c0), 0x480, 0x0) r3 = io_uring_setup(0x2b48, &(0x7f0000000200)) r4 = io_uring_setup(0x1081, &(0x7f0000000180)) r5 = io_uring_register$IORING_REGISTER_PERSONALITY(r4, 0x9, 0x0, 0x0) io_uring_register$IORING_UNREGISTER_PERSONALITY(r3, 0x3, 0x0, r5) io_uring_register$IORING_UNREGISTER_PERSONALITY(r2, 0xa, 0x0, r5) ioctl$DRM_IOCTL_GET_MAGIC(r2, 0x80046402, &(0x7f0000000200)=0x7) 23:56:05 executing program 2: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mprotect(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x0) 23:56:05 executing program 4: shmat(0x0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) madvise(&(0x7f0000ffb000/0x3000)=nil, 0x3000, 0xf) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x0) shmat(0x0, &(0x7f0000ffe000/0x2000)=nil, 0x4000) 23:56:05 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x6000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:05 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) setsockopt$netlink_NETLINK_BROADCAST_ERROR(r0, 0x10e, 0x4, &(0x7f0000000200)=0x3, 0x4) 23:56:05 executing program 5: clock_gettime(0x0, &(0x7f0000000000)) mlock2(&(0x7f0000ff0000/0x4000)=nil, 0x4000, 0x0) munmap(&(0x7f0000ffe000/0x2000)=nil, 0x2000) 23:56:05 executing program 2: mbind(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x2, &(0x7f0000000000)=0x100000001, 0xe9, 0x0) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) 23:56:05 executing program 4: mremap(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x1000, 0x3, &(0x7f0000ffd000/0x1000)=nil) 23:56:06 executing program 0: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) remap_file_pages(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0) 23:56:06 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xb700, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:06 executing program 5: r0 = socket$inet_icmp_raw(0x2, 0x3, 0x1) r1 = dup2(r0, r0) setsockopt$IPT_SO_SET_REPLACE(r1, 0x0, 0x40, &(0x7f00000003c0)=@raw={'raw\x00', 0x9, 0x3, 0x1f8, 0x90, 0x0, 0xb0, 0x90, 0xb0, 0x160, 0x1a8, 0x1a8, 0x160, 0x1a8, 0x3, 0x0, {[{{@ip={@rand_addr, @initdev={0xac, 0x1e, 0x0, 0x0}, 0x0, 0x0, 'virt_wifi0\x00', 'team0\x00'}, 0x0, 0x70, 0x90}, @unspec=@NOTRACK={0x20}}, {{@ip={@rand_addr=0x64010102, @dev, 0x0, 0x0, 'macvtap0\x00', 'vcan0\x00', {}, {}, 0x0, 0x0, 0x18}, 0x0, 0x70, 0xd0}, @common=@inet=@HMARK={0x60, 'HMARK\x00', 0x0, {@ipv6=@dev, [], 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x400}}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28}}}}, 0x258) r2 = socket(0x2, 0x3, 0x100000001) bind$inet(r2, &(0x7f0000000080)={0x2, 0x0, @local}, 0x10) connect$inet(r2, &(0x7f00000000c0)={0x2, 0x0, @multicast1}, 0x10) sendto$inet(r2, &(0x7f0000001580)="ed8a", 0x2, 0x0, 0x0, 0x0) 23:56:06 executing program 2: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_CMD_RESET_LINK_STATS(r0, &(0x7f0000000480)={&(0x7f0000000040), 0xe617bda66779a6da, &(0x7f0000000440)={&(0x7f0000000400)={0xfffffead, 0x0, 0x0, 0x0, 0x0, {{}, {}, {0xc, 0x14, 'syz0\x00'}}, ["", "", "", "", "", "", "", ""]}, 0xfd8f}}, 0x0) [ 360.699575][T13127] mmap: syz-executor.0 (13127) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.rst. 23:56:07 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x30000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:07 executing program 2: openat$zero(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) mbind(&(0x7f0000ffb000/0x3000)=nil, 0x3000, 0x0, &(0x7f0000000040), 0x1000, 0x0) 23:56:07 executing program 4: 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$inet_udp(0x2, 0x2, 0x0) getsockopt$inet_udp_int(r1, 0x11, 0x66, &(0x7f0000000200), &(0x7f00000000c0)=0x4) 23:56:07 executing program 0: pipe(&(0x7f0000000180)={0xffffffffffffffff, 0xffffffffffffffff}) vmsplice(r0, &(0x7f0000001880)=[{0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}], 0x9, 0x0) 23:56:07 executing program 5: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) msync(&(0x7f0000ffc000/0x1000)=nil, 0x1000, 0x4) 23:56:08 executing program 3: sendmsg$IPVS_CMD_DEL_DAEMON(0xffffffffffffffff, &(0x7f0000001100)={&(0x7f0000001000)={0x10, 0x0, 0x0, 0x200}, 0xc, &(0x7f00000010c0)={&(0x7f0000001040)={0x5c, 0x0, 0x100, 0x70bd2c, 0x25dfdbfc, {}, [@IPVS_CMD_ATTR_TIMEOUT_TCP_FIN={0x8, 0x5, 0x772}, @IPVS_CMD_ATTR_DEST={0x38, 0x2, 0x0, 0x1, [@IPVS_DEST_ATTR_ADDR_FAMILY={0x6, 0xb, 0x2}, @IPVS_DEST_ATTR_PERSIST_CONNS={0x8, 0x9, 0x100}, @IPVS_DEST_ATTR_WEIGHT={0x8, 0x4, 0xffff8001}, @IPVS_DEST_ATTR_ADDR={0x14, 0x1, @ipv4=@multicast2}, @IPVS_DEST_ATTR_INACT_CONNS={0x8, 0x8, 0x7f}]}, @IPVS_CMD_ATTR_TIMEOUT_UDP={0x8, 0x6, 0x7}]}, 0x5c}, 0x1, 0x0, 0x0, 0x8081}, 0x44004) r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$batadv(&(0x7f00000001c0), 0xffffffffffffffff) r2 = socket$inet6_tcp(0xa, 0x1, 0x0) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r2, 0x8933, &(0x7f0000000000)={'batadv0\x00', 0x0}) sendmsg$BATADV_CMD_SET_MESH(r0, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000200)={0x24, r1, 0x1, 0x0, 0x0, {}, [@BATADV_ATTR_MESH_IFINDEX={0x8, 0x3, r3}, @BATADV_ATTR_GW_SEL_CLASS={0x8, 0x34, 0x3}]}, 0x24}}, 0x0) sendmsg$BATADV_CMD_SET_MESH(0xffffffffffffffff, &(0x7f0000001240)={&(0x7f0000001140)={0x10, 0x0, 0x0, 0x10000}, 0xc, &(0x7f0000001200)={&(0x7f0000001180)={0x44, r1, 0x10, 0x70bd2a, 0x25dfdbfb, {}, [@BATADV_ATTR_VLANID={0x6, 0x28, 0x1}, @BATADV_ATTR_MULTICAST_FORCEFLOOD_ENABLED={0x5, 0x37, 0x1}, @BATADV_ATTR_ELP_INTERVAL={0x8}, @BATADV_ATTR_FRAGMENTATION_ENABLED={0x5, 0x30, 0x1}, @BATADV_ATTR_GW_MODE={0x5, 0x33, 0x2}, @BATADV_ATTR_GW_SEL_CLASS={0x8}]}, 0x44}, 0x1, 0x0, 0x0, 0x8001}, 0x0) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:08 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x34000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:08 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000003b00)={0x0, 0x0, &(0x7f0000003a40)=[{0x0}, {0x0, 0x13b4}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}, {0x0}], 0x9}, 0x0) 23:56:08 executing program 4: shmat(0x0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) mprotect(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x0) 23:56:08 executing program 2: r0 = socket$alg(0x26, 0x5, 0x0) bind$alg(r0, &(0x7f0000000000)={0x26, 'hash\x00', 0x0, 0x0, 'md4-generic\x00'}, 0x58) 23:56:08 executing program 5: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) shmat(0x0, &(0x7f0000ffb000/0x3000)=nil, 0x4000) 23:56:08 executing program 3: socket$inet6(0xa, 0x1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/12, 0xc) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002080)=""/4108, 0x100c) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000040)=""/63, 0x3f) 23:56:08 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) connect$netlink(r0, 0x0, 0xfcaa) 23:56:08 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x400300, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:08 executing program 4: r0 = creat(&(0x7f0000000300)='./bus\x00', 0x0) lseek(r0, 0xffff, 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) r2 = open(&(0x7f0000000080)='./bus\x00', 0x400141042, 0x0) mmap(&(0x7f0000001000/0xa000)=nil, 0xa000, 0x1800007, 0x11, r2, 0x0) write$FUSE_ATTR(r0, &(0x7f0000000340)={0x78}, 0x78) r3 = socket$inet_icmp_raw(0x2, 0x3, 0x1) setsockopt$IPT_SO_SET_REPLACE(r3, 0x0, 0x40, &(0x7f0000000640)=@raw={'raw\x00', 0x9, 0x3, 0x240, 0x0, 0x0, 0xb0, 0xc0, 0xb0, 0x1a8, 0x1a8, 0x1a8, 0x1a8, 0x1a8, 0x3, 0x0, {[{{@uncond, 0x0, 0x98, 0xc0, 0x0, {}, [@common=@ttl={{0x28}}]}, @common=@unspec=@MARK={0x28}}, {{@uncond, 0x0, 0xc8, 0xe8, 0x0, {}, [@common=@inet=@hashlimit1={{0x58}, {'veth0_to_batadv\x00', {0x3d, 0x6, 0x0, 0x0, 0x0, 0x1, 0x7fff}}}]}, @unspec=@TRACE={0x20}}], {{'\x00', 0x0, 0x70, 0x98}, {0x28}}}}, 0x2a0) r4 = socket$inet_udp(0x2, 0x2, 0x0) connect$inet(r4, &(0x7f0000000200)={0x2, 0x0, @dev={0xac, 0x14, 0x14, 0x2d}}, 0x10) sendmmsg(r4, &(0x7f0000007fc0), 0x4000000000001a8, 0x0) 23:56:09 executing program 2: r0 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_buf(r0, 0x6, 0x0, &(0x7f0000000000)="640a0f9a", 0x4) 23:56:09 executing program 5: 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) perf_event_open(&(0x7f0000000280)={0x2, 0x80, 0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) msgget(0x3, 0x0) 23:56:09 executing program 0: openat$zero(0xffffffffffffff9c, &(0x7f0000000240), 0x1112c0, 0x0) 23:56:09 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x1000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:09 executing program 4: mlock2(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x0) mbind(&(0x7f0000ffa000/0x4000)=nil, 0x4000, 0x1, &(0x7f0000000000)=0x9, 0x4, 0x3) 23:56:09 executing program 2: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, &(0x7f0000000000)=""/113) madvise(&(0x7f0000e05000/0x3000)=nil, 0x3000, 0xe) 23:56:09 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/180, 0xb4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:10 executing program 0: r0 = shmget$private(0x0, 0x2000, 0x0, &(0x7f0000ffb000/0x2000)=nil) shmat(r0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) madvise(&(0x7f0000ffb000/0x3000)=nil, 0x3000, 0xf) mlock(&(0x7f0000ffd000/0x1000)=nil, 0x1000) 23:56:10 executing program 5: r0 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) setsockopt$inet6_IPV6_HOPOPTS(r0, 0x29, 0x36, &(0x7f00000000c0)=ANY=[], 0x8) connect$inet6(r0, &(0x7f00000003c0)={0xa, 0x0, 0x0, @mcast2, 0x4}, 0x1c) setsockopt$SO_BINDTODEVICE(r0, 0x1, 0x19, &(0x7f0000000000)='bridge0\x00', 0x10) write(r0, &(0x7f00000000c0)="8f2a0b65bd8c06dc0304000e0280a7b6072e63e286a5cefe", 0x18) 23:56:10 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x2000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:10 executing program 4: mremap(&(0x7f0000ff8000/0x4000)=nil, 0x4000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:56:10 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/24, 0x18) 23:56:10 executing program 2: pipe(&(0x7f00000001c0)={0xffffffffffffffff, 0xffffffffffffffff}) r2 = socket$inet_tcp(0x2, 0x1, 0x0) setsockopt$inet_tcp_int(r2, 0x6, 0x10000000013, &(0x7f0000000180)=0x1, 0x233) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r3, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) connect$inet(r2, &(0x7f00000000c0)={0x2, 0x0, @remote}, 0x10) setsockopt$inet_tcp_TCP_REPAIR_WINDOW(r2, 0x6, 0x1d, &(0x7f0000000100)={0x0, 0xdf5, 0x21f8}, 0x14) write$binfmt_misc(r1, &(0x7f0000000200)=ANY=[], 0x4dca) splice(r0, 0x0, r2, 0x0, 0x1ffe0, 0x0) 23:56:11 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x3000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:11 executing program 0: clone(0x20002004ffc, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) exit_group(0x0) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = socket$nl_netfilter(0x10, 0x3, 0xc) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) sendmsg$IPCTNL_MSG_CT_NEW(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000000)={&(0x7f0000000400)={0x68, 0x0, 0x1, 0x401, 0x0, 0x0, {0xa}, [@CTA_TUPLE_ORIG={0x24, 0x1, 0x0, 0x1, [@CTA_TUPLE_IP={0x14, 0x1, 0x0, 0x1, @ipv4={{0x8, 0x1, @local}, {0x8}}}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5}}]}, @CTA_TUPLE_REPLY={0x24, 0x2, 0x0, 0x1, [@CTA_TUPLE_IP={0x14, 0x1, 0x0, 0x1, @ipv4={{0x8, 0x1, @initdev={0xac, 0x1e, 0x0, 0x0}}, {0x8, 0x2, @initdev={0xac, 0x1e, 0x0, 0x0}}}}, @CTA_TUPLE_PROTO={0xc, 0x2, 0x0, 0x1, {0x5}}]}, @CTA_TIMEOUT={0x8}, @CTA_NAT_SRC={0x4}]}, 0x68}}, 0x0) r2 = socket$packet(0x11, 0x2, 0x300) setsockopt$packet_tx_ring(r2, 0x107, 0x5, &(0x7f00000000c0)=@req3={0x8000, 0x6, 0x8000, 0x6}, 0x1c) 23:56:11 executing program 5: syz_emit_ethernet(0x9c, 0x0, 0x0) 23:56:11 executing program 4: memfd_create(0x0, 0x548462df9ea63863) 23:56:11 executing program 3: ioctl$IMSETDEVNAME(0xffffffffffffffff, 0x80184947, &(0x7f00000010c0)={0x81, 'syz1\x00'}) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/106, 0x6a) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/2, 0x2) fcntl$F_SET_RW_HINT(0xffffffffffffffff, 0x40c, &(0x7f0000001200)=0x4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/221, 0xdd) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:11 executing program 0: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mprotect(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x3) 23:56:11 executing program 2: pkey_mprotect(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x4, 0xffffffffffffffff) mlock2(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x0) 23:56:11 executing program 5: r0 = socket$netlink(0x10, 0x3, 0xc) sendmsg$TIPC_CMD_GET_NODES(r0, &(0x7f0000000600)={0x0, 0x0, &(0x7f00000005c0)={0x0}}, 0x0) 23:56:11 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x4000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:12 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000003b00)={0x0, 0x0, &(0x7f0000003a40)=[{&(0x7f0000000140)={0x18, 0x10, 0x301, 0x0, 0x0, "", [@typed={0x8, 0x0, 0x0, 0x0, @pid}]}, 0x18}], 0x1}, 0x0) 23:56:12 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4074, 0xffffffffffffff58) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:12 executing program 0: mincore(&(0x7f0000bff000/0x400000)=nil, 0x400000, &(0x7f0000000000)=""/112) mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) munmap(&(0x7f0000c00000/0x400000)=nil, 0x400000) 23:56:12 executing program 2: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) mmap(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x0, 0x40010, r0, 0x0) 23:56:12 executing program 5: mq_open(&(0x7f0000001000)='./cgroup.cpu/syz1\x00', 0x0, 0x0, 0x0) 23:56:12 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x5000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:12 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) getsockopt$netlink(r0, 0x10e, 0x9, 0x0, &(0x7f0000000000)) 23:56:13 executing program 2: openat$bsg(0xffffffffffffff9c, &(0x7f0000000040), 0x75d001, 0x0) 23:56:13 executing program 0: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) 23:56:13 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) 23:56:13 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x6000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:13 executing program 5: mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) munmap(&(0x7f0000ffb000/0x3000)=nil, 0x3000) mbind(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0, 0x3) 23:56:13 executing program 4: syz_emit_ethernet(0x26, &(0x7f0000000000)={@random="fbac2a8d7427", @broadcast, @val={@void}, {@ipv4={0x800, @generic={{0x5, 0x4, 0x0, 0x0, 0x14, 0x0, 0x0, 0x0, 0x0, 0x0, @local, @loopback}}}}}, 0x0) 23:56:13 executing program 2: mkdirat(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x0) mkdirat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000000)='./cgroup.net/syz1\x00', 0x1ff) mount$fuse(0x20000000, &(0x7f00000004c0)='./file0\x00', 0x0, 0x721c, 0x0) open(&(0x7f0000000240)='./file0\x00', 0x102e0, 0x0) 23:56:13 executing program 0: sched_getattr(0x0, &(0x7f0000000000)={0x38}, 0x38, 0x0) 23:56:13 executing program 3: rename(&(0x7f0000000080)='./file0\x00', &(0x7f00000000c0)='./file0\x00') keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/50, 0x32) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000040)=""/24, 0x18) 23:56:14 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x7000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:14 executing program 4: shmat(0x0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) fork() 23:56:14 executing program 5: socketpair(0x2, 0xa, 0x44e, 0x0) 23:56:14 executing program 0: mq_open(&(0x7f0000000000)='{:*}!*,-\x00', 0x40, 0x0, &(0x7f0000000040)={0x20, 0x4, 0xffff, 0x3977800}) 23:56:14 executing program 2: r0 = socket$netlink(0x10, 0x3, 0x0) getsockopt$netlink(r0, 0x10e, 0x5, &(0x7f0000004500)=""/4096, &(0x7f0000005500)=0x1000) 23:56:14 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a440)=""/4086, 0xff6) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/102400, 0x19000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/90, 0x5a) 23:56:14 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x8000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:14 executing program 5: munmap(&(0x7f0000ffc000/0x4000)=nil, 0x4000) mbind(&(0x7f0000ffc000/0x3000)=nil, 0x3000, 0x2, &(0x7f0000000000)=0x425, 0x7ff, 0x0) 23:56:14 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$TIPC_CMD_RESET_LINK_STATS(r0, &(0x7f0000000480)={&(0x7f00000003c0), 0xe617bda66779a6a6, &(0x7f0000000440)={&(0x7f0000000400)={0x28, 0x0, 0x0, 0x0, 0x0, {{}, {}, {0xc, 0x14, 'syz0\x00'}}, ["", "", "", "", "", "", "", ""]}, 0x28}}, 0x0) 23:56:15 executing program 2: munmap(&(0x7f0000c00000/0x400000)=nil, 0x400000) 23:56:15 executing program 0: mlock(&(0x7f0000ff8000/0x3000)=nil, 0x3000) mremap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x4000, 0x3, &(0x7f0000ff5000/0x4000)=nil) 23:56:15 executing program 3: getsockname$inet(0xffffffffffffffff, &(0x7f0000000000)={0x2, 0x0, @empty}, &(0x7f0000000040)=0x10) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000080)=""/4066, 0xfe2) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) 23:56:15 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x9000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:15 executing program 4: r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) ioctl$TUNSETQUEUE(r0, 0x400454d9, &(0x7f0000000000)={'veth1_to_batadv\x00'}) 23:56:15 executing program 5: openat$zero(0xffffffffffffff9c, &(0x7f0000001080), 0x5b1a02, 0x0) 23:56:15 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4099, 0x1003) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/77, 0x4d) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/15, 0xf) 23:56:15 executing program 2: mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) madvise(&(0x7f0000fdc000/0x1000)=nil, 0x1000, 0x12) mbind(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0, 0x0, 0x0, 0x3) 23:56:15 executing program 0: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) madvise(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x3) 23:56:15 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xf000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:16 executing program 4: mlock2(&(0x7f0000fdb000/0x2000)=nil, 0x2000, 0x0) madvise(&(0x7f0000fdc000/0x3000)=nil, 0x3000, 0x9) 23:56:16 executing program 5: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) madvise(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x12) 23:56:16 executing program 0: clock_gettime(0x7, &(0x7f0000000140)) 23:56:16 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/129, 0x81) 23:56:16 executing program 2: openat$zero(0xffffffffffffff9c, &(0x7f0000000040), 0x8040, 0x0) 23:56:16 executing program 4: syz_emit_ethernet(0x22, &(0x7f0000000000)={@link_local, @dev, @val={@void}, {@can={0xc, {{}, 0x0, 0x0, 0x0, 0x0, "73772010773e2508"}}}}, 0x0) 23:56:16 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x60000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:16 executing program 5: mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x0, &(0x7f0000ffc000/0x1000)=nil) getresgid(&(0x7f0000001600), &(0x7f0000001640), &(0x7f0000001680)) 23:56:16 executing program 0: syz_emit_ethernet(0x9c, &(0x7f0000000080)=ANY=[@ANYBLOB="bbbbbbbbbbbba8c8094d97a891"], 0x0) 23:56:17 executing program 2: mbind(&(0x7f0000e72000/0x1000)=nil, 0x1000, 0x0, 0x0, 0x0, 0x9) 23:56:17 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001240)=""/4111, 0x100f) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/8, 0x8) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001140)=""/107, 0x6b) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/250, 0xfa) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000011c0)=""/124, 0x7c) 23:56:17 executing program 4: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RREAD(r0, &(0x7f0000001b00)={0x1001, 0x75, 0x0, {0xff6, "b3c1d96c23adbe63685ef8c3612f969ba0786f21f73a57d2fd414c1fcf14649694d7f65c66f2282adcd86a38824071e7d8422f48327274fb6627935f2c4e7d5cec0bc1909118a087c88532bf3d25ec8e1abb73179c0f28182c3ffc31fa447dffa32e5be1428d5f2a5b595d38e43446fa6870785def84d1c2801ad5198900901743c37c680e27570edb394061579515fd4db85caf8b4aedb162b076980a4cf604a0a02249f5cab9bfc64742c72b23df01c0376f0aa96e8ce4cc58e75b5b79168b21fa5e08b24afbbb57c5c474d1392ca2e56086c78ea6271ca0da43e3450f700ab4cc9d82f9e2f33c89754c1927302cc3a73b24a82e108442c41461cedafa4bdb3b301802b99ca35a9901cdd8e78782c6f2825410d2a34bef155fad6b8c735fec7a694d34a1890323201f485828cab23bd28ca19282d20ce558ebcfbbdea4af5a38c7e18e9f2a063775c6ba5c4d97bba06b1071338b8e1f64a04d9b8e6dbf7c71f6fe4a3470fa1c0469b0f2ee27a44f0f8b2b58cca2a36ea479ad25a8e42de3e00127f6ef035507210a50fb6113e065b9266fe8aff5f1375c5e47c512f8c99e01e032c82f0c0c3ec9873df1359af1e67d92e0854590b4d16bf31d4388d9fe1992da04c61a6641746fefb431b2acf2366acfb58deaec33640664d1d81ec1e77eaaa1359fb1b23bff14348185cdf98eed84e2decdc0eae22257da34c7de1a99536125dade58da2651c19f981b8e351d8b771d9b983f2007642ba3176334bbbca100eb4d93d09f74c41985cd1d05f0877e8a8276b81cb2b256ef4df1df1ba549f3cc22e418c2c044aba20ea6c3d3518f44fef49807ec0f87cec644124165e4d8916e61447d95e149f287c39910fdbd045b1ce96520426fc8cd1a46b5cfc2028c3ae4e68287bfbfcace4b7ce4e5a8e85515bb23306f286277516d489db028af903c51c4e8007ac89678ffe290070338e558b8bd544a643e35256b09846feb7918f089abedc1c7d3efde2dc4505527bd20f982025362b59e3704f48ac5cebbb23c0a7a2d4b1d9b1244413f40a4322fb3d6e4cc62fde42afc9fed62c5ab1a901aef938d240528c28ba3a2e89f1cfcf202fa9a149994e587c6660a1d1a86f377074ca9ac717ba34b891cc2bcf0678c346de75e866071152176c79164f3c9b06215609132571ff8b2ffa6efe0659a0a074cd10d9a08478d46d3448670b76f759ece9c6b7f2e0c9bc088b3e268c812ea29ec669f84f1b5544f382d3807e770049d711cf0d686369ac2cc72ebee398e0ef78db5c80c7188150a92cbaf27364c9fc44d98b04d8205bf0f5368afc63303fafdbf6a31a862361c8b08e7fb194c7d1e75c3b4564fb70888bb5e5a3a8f1bfc73978fc9277cb504ba646a419458daeaf83955a100faaaf943650aa5590f458626e29b18f631e916fb138c49a09f8705b72bf952d8c5ff2b2cf1373a69759fb6e0b481006d256da94ab8775c0e9505e2a5d5f11b8c75185faf4bc93bd6f9d24b399f6a3eb67861fe66907eed22278dc9854d1cec91ffbc0023c75d76dcc5e67996a9f002e5741124e0e29421fec9142c7825a09f333275e69f676c24062608d3fdaabc5914881ac74cbcc7edde857f2c46a6e58d668ad18586f4c4fd46bed40476f525efa7734c3e534c74236239df19a9b3418082eaf1894ad54e3d6ebecdfa1ff0549197a4e689f1ce96212ff4d87568ded651d992ece0cbfdd5fa6fbeb25d7bdb791ed140b4d84bf8832c748045ebbe7523c9ad0efe3cc4792e398d113cc092e18f6a5c242b1922a5dd5b13a1adf5afd673d869bb19e991c4aa044982308f08f010510b95194a8f6a275da672f90fa159cc728a19132f711ea8558ad2e65b0a63f5ea9e8fc87b154e83ce3060bfa106ecdc75b8e4c47f9a78d5c02d63ccbff9392401b8f4fda12a1f664bd8a1700009b199848f097939e76c8636099de6101f7b1f3bb3ccc75a6e66cd774220adfb4a05f766058503be13d5d88aa9cfec0b61b38d4414c7fce6a7fdbb55623a8785678b56b722fe9245f152f36403c7d3e920f6854e1b8a317ed01e1ad4ad252d4399ed8dbf11c6b1814a7a817889f806c39e554575d5ca484030042a0d02562fb7fbecf86af557764e9a176b6f1aae0f53e34b2bebd61f9613465645de60c35ddb84e07a3fb8df29ea28750d8d2246a5a7f36e40a480ccf1357599aca51e96004e04cba467a0c29ea205edc561ecc16f6ca63123f4ee3f1dcd94dc5f3cad64bddf955f04f6e548880be020f3dcdd75e7e583a204d3a6a2fbc09326c2755fb56883eaf28bfcc6b81f2992615acfc0785750b48bb106a9fdb3c4f25ec994cc0f808ce61197acb1cc2b76a538a1a471156be69bb543aede6784694f91c3fbb1379972587da01f44d0c71fad0474971b48b41e2f588d3b2b342273288674f12d18f34c0ec095b8809071d1e53c4320fbb6f82bee5547a1472c8efe3e116760fd09244c6984e3ac00a750cf34f40171ccd75aa5ac20dc9fdd4296ca9b0f3acda8f9c8b90724ccadd6c8a8e1e89493b39c2dbe7dccd97211e49e691ab9bf973d81fbbc0e86c9c01a376dadbd334a941c64d0f47c2a7dea75a7559ae99a89193ae131ac2de2cafbd102ec7ce147c315ed4eea254fc124ca611a1062aab1bd7c067e8a6b96bcf67b6e8ebf8b8c853d2b0bf890447173fb449692e002ae94b9be0042b988f9aa81fd3b1fbc2d24e39bb45367b36b8befdcfc353b7a4741c42906d10430b672d2782afc92a2e61ee12452f05e7df693ab7d7f58144171f23e134f4c388b48becfc8dc1d45a56e09dfaebd7d8e142913c72efc498447eadf37b3b48541a8b24331e5bc4d274beba1d3179b1130ea158500f7c8f773fc8df7ccef4a63ac545cc13002d7ff9d7087871d8e733e947ce2e8af8d72e73807467800036941d8ca71576b5a9983d79520b3943b37213587be5a64cb3f96e57fadddc15d5896729388ef6922e8dfcc1ea4350005f833e9f1858f790eb5d1f09900c2388ca175b0abc5aa303b63824044fa8b20be4a9e4d23325e05fd9bfc3a80f5002531e249a2f9de493d1863e5593183089c5a1babc2b1262e2bcd75ec7a3d8ac10042d862b8249200ebf3d2e17ec3862761b805e447ec163a15d74bd19e8e637a44a49ab1a6c701e18636794510346b045399e310c590dcfd4980cf851af96a6167a943898d0fa00f255edaad15b0be9017d857259bad8f4df874939ab4abb43a3397134d48ca5c6e03a0170cc83b1b3afc408765ac60728c19be3e0333c0e3b00e917fa05788c8f1a94445f378a9d92cb5432365f8d1f65fadb2fbe0b066945fc5fc9c352a5ad428de47773f3d354fe2d2c3cf246ecd38350f45c2c52262e93f443bd3a12cb1aa8db346bb8b9a997be857cb403ea26f299283a24c4721a95fb44ab7fccc990a32b827c517d269e83d284bba4d461a967609c7288e0b3af41a1d91b695fddd6fde08f8269e78d9f61fd2841530264cdd745324b555edf1e16e37e5ddbf836fb282d2319045d991291ae8b770af9342eb3975ddcacd0c2613e300be129a25c94e89877e47bcef42481d4dfc1bfcab3cf89a8feb219416275cf183b91eaa5c55511f61c52370263d9bc9965f858871cb3f5d08eb82f92b4e3a2d5a4e4b8dc0f0f41e4155f5db83a9a1c9c35fcb0f0eb5809c9020a58eca3b638910e069c8650daa14274469ff222b9c076776610dcc203fdfd520a73eeb3bcb2c1bd21d277b79ca8f6838e7445f35a9ea06ceb77a671d0f99591a262ef493e0117becc10d190913c794ec1c2624dd415df3ef82d8315358649684665cfc5217c6ff86a351c0daa385df2caf085a29de291b2389ea7eee62fe5816aef88f11d9b9575f268be0d21287a48e88389531ec6c8ef5307c0da7a11087cfcc8d8059862a401a9ab9528d2034768d41af263da91b7f5adabe5cd6ef7db454f433362dcd091e90d47eb4d0cff98583be0313daad84533bbf03f1486c8c353910f50eb4a0150e3afa372e39cc21e33e65c80a5fb93f81f4315c5350cdf268c2247bf57c1302316da2559c1e5590c1effb52a37af9f3a0e9378f63129cf80d9cd804b4cee0d73bff89ae56977dade37637b407265705285b5982d3dbeb57a92676eb771f195af8974e58d1efe601429e5f19a69d6c0dc7be0f2705ea00737546e8fdd68a71a022f08bb8028b288143ddfca69a31a1f999c355c8bf8e12d89524ee742abd121e6d56f62b173098efb29ed23a92288cc211239f642e50fba40a46dbd0593f91a1b646f2fc1517da5a384de69ff66897af76fa68e1d3e8032afb9e1c4ce91a58c7ac36efd79bcbb5f876dbf36c0c2d4c9f8e34c0fbca9245221e3bd8acf5f448e56a30fa4373a3ca3ebdc67eea8638ce89cc7eea8d79197242feae0c72ee1d42b9fd938e5625a1da5471af7e14be3e9a61fe4d694e9295b8e57ce284117a006c7cadbf9394e4b532febe310dfe414f987636c187fb7995f58599657063024153b25474e81a73c8fa2dac9f02fa9419e9ddb9c3a65d0d518b7721e82c295409267ced31877434b0fe27b7de460b297392d91784fe58d8426bfea1eb1ce7e1655ebdcbb6ead0418a1d7b117d694ea9d3a818ec24d05e4827caf209d9cdc6cd723a07aed331b86e42178f91276dffad9a9d8590381e23506e7b71df9ea9e3f10d2f9635194c28bb766ee256aaa67675c84373eb36206ec5feca0d0e24d3837de6e6a4ffb4bfa1cedc19eab1a6736edee160d7db9bac07eb15b4520e8a53ff430d630fa366383c1a9a4ee8d03f5d32af9838c214d751ea2c151e8fa965e3b5418b47b9f2d3cb1e1e618e3e683be597eb2885bfb86cc385dc51426738ce261cb3e265a7b130f8b53546b6d8c4fe2e7ac2bc81d5a686d03c6a40ba62f0d11af876a81b1b4a5b19437b62e24c661c3bcfa44efdc76625c0eb87d1a80bc490e3fad9094aced8a13254ef56f04e74d89f230d396a87182538beac2de1c6a18768e16ec32da0af3b7da24e2f280d9069f273643a8001c6bdfa36a26eb58cd67924438a1f3bbf751cf121af79efbf4edb4543149306c8598ae20bb6cd4f0407441ed03488e7b1cae261379e5eed7cace05e65ab0aa8f8c79e19edf1c98124318c76ccad6f82171dcd98c21ec56fec9ff5294968dabcd9090b470c251ec44987ec8b474d085fe5f804afedb5e10d946a9dd1efe28e2bd5eeb2cf95b06384ac7a41e7da8b340deff0b2b03629a78fff2db6b9ad54816b32269bbe72cfa788b587d0701c9805767f6834dcf6dd45952b116ee5d83611091a69b3aaabd834475e2fea2eb5d011caaa87f9b9a5a1b9d0663dd18f244a7280818f5f9caceae5db89b4e53ca16561ebbffc013fab86a65a8e65a381fdfa57a0e66456988af3d9a64af5bd93477c8ab66d324d322fe7a1956d6b1d844db61cf952447374ca641a7790aa6bc226a87350d27e445b2495d34860817092c8a4dca1d4d69b40aa5e6851f75579a72cd8e51256cbf857872f0959124b9e8b24674bf413503cf0e8309a364e8b49d81b579771f2f35534038393001bf42e630110917b4a1b197375eb7fef1bb93d204fd6c9322a8aae549d72c94d3553edb0c5bceb0ce88b9cba9b4bddfa9e8a81b5fdbbb8910e985ed8d90c1d9058f5e40320b5d1c88a57ba1e090bfbd43e91f42427647dcafbed34d2c80c6773b09915811ade55d082174a7f96f6e321083563ed4207af1931b18815d2f2a1bda087e25ffe5de6369245cd3daaec41084a5f809bf8a51573ea427d9913ed"}}, 0x1001) 23:56:17 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x9effffff, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:17 executing program 5: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffd000/0x3000)=nil, 0x500b5af6d6a1d5f0) 23:56:17 executing program 0: syz_emit_ethernet(0x22, &(0x7f0000000000)={@link_local, @dev, @val={@void}, {@can={0xc, {{}, 0x0, 0x0, 0x0, 0x0, "73772010773e2508"}}}}, 0x0) syz_emit_ethernet(0x14, &(0x7f0000000080)={@local, @dev, @val={@void}, {@mpls_mc={0x8848, {[], @generic="3686"}}}}, 0x0) 23:56:17 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xb7000000, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:17 executing program 2: r0 = socket(0x2, 0x2, 0x0) sendmsg$TIPC_CMD_SET_NETID(r0, &(0x7f00000000c0)={&(0x7f0000000000), 0xc, &(0x7f0000000080)={0x0}}, 0x0) 23:56:17 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x7a6) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001240)=""/145, 0x91) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/222, 0xde) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000011c0)=""/65, 0x41) 23:56:17 executing program 4: mlock2(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0) mincore(&(0x7f0000ffc000/0x1000)=nil, 0x1000, 0x0) 23:56:18 executing program 0: r0 = socket$netlink(0x10, 0x3, 0x0) setsockopt$netlink_NETLINK_DROP_MEMBERSHIP(r0, 0x10e, 0x2, &(0x7f0000000000)=0xc, 0x4) 23:56:18 executing program 5: mbind(&(0x7f0000fff000/0x1000)=nil, 0x1000, 0x1, &(0x7f0000000000)=0x200, 0x8001, 0x0) 23:56:18 executing program 2: seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000080)={0x1, &(0x7f0000000040)=[{0x9}]}) 23:56:18 executing program 3: r0 = bpf$BPF_LINK_CREATE(0x1c, &(0x7f0000001000)={0xffffffffffffffff, 0xffffffffffffffff, 0x22}, 0x10) ftruncate(r0, 0xffffffff) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) r1 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r1}, 0x2c, {'rootmode', 0x3d, 0x4000}}) read$FUSE(r1, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r1, &(0x7f0000004200)={0x50, 0x0, r2, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r1, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r3 = fcntl$dupfd(r1, 0x0, r1) syz_fuse_handle_req(r3, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) bpf$BPF_LINK_UPDATE(0x1d, &(0x7f0000001040)={r0, 0xffffffffffffffff, 0x4, r3}, 0x10) 23:56:18 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xf0ffffff, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:18 executing program 4: r0 = socket$netlink(0x10, 0x3, 0x0) getsockopt$netlink(r0, 0x10e, 0x0, 0x0, &(0x7f0000005500)) 23:56:18 executing program 0: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) madvise(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x3) 23:56:18 executing program 5: mincore(&(0x7f0000ffb000/0x4000)=nil, 0x4000, &(0x7f0000000000)=""/80) getresgid(&(0x7f0000000080), &(0x7f00000000c0), &(0x7f0000000100)) 23:56:19 executing program 2: openat$tun(0xffffffffffffff9c, &(0x7f0000000100), 0x101000, 0x0) 23:56:19 executing program 4: r0 = socket$netlink(0x10, 0x3, 0x0) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f00000006c0)={&(0x7f0000000600), 0xc, &(0x7f0000000680)={0x0, 0xd}}, 0x0) 23:56:19 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xffffff7f, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:19 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4127, 0x101f) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/149, 0x95) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/33, 0x21) 23:56:19 executing program 0: r0 = socket(0x2, 0x3, 0x5) setsockopt$inet_tcp_TLS_TX(r0, 0x6, 0x1, 0x0, 0x0) 23:56:19 executing program 5: clock_getres(0xf806c0e559e7c21d, 0x0) 23:56:19 executing program 2: 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 = memfd_create(&(0x7f0000001fc1)='\x00\xac=\x9d\xd2\xdb\xe6\xbf\xb4\b\xedcJ\x8e\x84\xd4N\x12\x9b\x1f\t\xbd\x11+\x86T\x16\xa3\xb3\xae0\x9f9?\xefo\xa4k\x012>\xa1\x9c\x86x\x1c\x9f\x84\x195\xde\x97_\t~\xf3Y\x12\"p^\xc1\x0f', 0x0) fallocate(r1, 0x0, 0x0, 0x7) write(r1, &(0x7f0000002000)='/', 0x1) sendfile(r1, r1, &(0x7f0000000080), 0xfec) write$binfmt_elf64(r1, &(0x7f0000000180)=ANY=[@ANYBLOB="8f"], 0x1) mmap(&(0x7f0000000000/0x2000)=nil, 0x2000, 0x4, 0x11, r1, 0x0) creat(&(0x7f00000000c0)='./file0/file0\x00', 0x0) unlinkat(0xffffffffffffffff, &(0x7f0000000000)='./file0\x00', 0x0) 23:56:19 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_wireguard(0xffffffffffffffff, 0x8933, &(0x7f0000001ac0)={'wg1\x00'}) mlock(&(0x7f0000ffb000/0x2000)=nil, 0x2000) mmap(&(0x7f0000ffc000/0x2000)=nil, 0x2000, 0x0, 0x11, r0, 0x0) 23:56:19 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xffffff9e, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:19 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4095, 0xfffffffffffffdaf) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/135, 0x87) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/28, 0x1c) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002100)=""/58, 0x3a) 23:56:19 executing program 4: r0 = socket(0xa, 0x3, 0x4) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8933, 0x0) 23:56:20 executing program 5: madvise(&(0x7f0000db3000/0x4000)=nil, 0x4000, 0x4) 23:56:20 executing program 0: mincore(&(0x7f0000800000/0x800000)=nil, 0x800000, 0xfffffffffffffffe) 23:56:20 executing program 4: shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) 23:56:20 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0xfffffff0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:20 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4055, 0xfd7) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:20 executing program 5: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) write$P9_RCLUNK(r0, &(0x7f0000001080)={0x7}, 0x7) write$P9_RREAD(r0, &(0x7f0000000000)={0xffa, 0x75, 0x0, {0xfef, "b3c1d96c23adbe63685ef8c3612f969ba0786f21f73a57d2fd414c1fcf14649694d7f65c66f2282adcd86a38824071e7d8422f48327274fb6627935f2c4e7d5cec0bc1909118a087c88532bf3d25ec8e1abb73179c0f28182c3ffc31fa447dffa32e5be1428d5f2a5b595d38e43446fa6870785def84d1c2801ad5198900901743c37c680e27570edb394061579515fd4db85caf8b4aedb162b076980a4cf604a0a02249f5cab9bfc64742c72b23df01c0376f0aa96e8ce4cc58e75b5b79168b21fa5e08b24afbbb57c5c474d1392ca2e56086c78ea6271ca0da43e3450f700ab4cc9d82f9e2f33c89754c1927302cc3a73b24a82e108442c41461cedafa4bdb3b301802b99ca35a9901cdd8e78782c6f2825410d2a34bef155fad6b8c735fec7a694d34a1890323201f485828cab23bd28ca19282d20ce558ebcfbbdea4af5a38c7e18e9f2a063775c6ba5c4d97bba06b1071338b8e1f64a04d9b8e6dbf7c71f6fe4a3470fa1c0469b0f2ee27a44f0f8b2b58cca2a36ea479ad25a8e42de3e00127f6ef035507210a50fb6113e065b9266fe8aff5f1375c5e47c512f8c99e01e032c82f0c0c3ec9873df1359af1e67d92e0854590b4d16bf31d4388d9fe1992da04c61a6641746fefb431b2acf2366acfb58deaec33640664d1d81ec1e77eaaa1359fb1b23bff14348185cdf98eed84e2decdc0eae22257da34c7de1a99536125dade58da2651c19f981b8e351d8b771d9b983f2007642ba3176334bbbca100eb4d93d09f74c41985cd1d05f0877e8a8276b81cb2b256ef4df1df1ba549f3cc22e418c2c044aba20ea6c3d3518f44fef49807ec0f87cec644124165e4d8916e61447d95e149f287c39910fdbd045b1ce96520426fc8cd1a46b5cfc2028c3ae4e68287bfbfcace4b7ce4e5a8e85515bb23306f286277516d489db028af903c51c4e8007ac89678ffe290070338e558b8bd544a643e35256b09846feb7918f089abedc1c7d3efde2dc4505527bd20f982025362b59e3704f48ac5cebbb23c0a7a2d4b1d9b1244413f40a4322fb3d6e4cc62fde42afc9fed62c5ab1a901aef938d240528c28ba3a2e89f1cfcf202fa9a149994e587c6660a1d1a86f377074ca9ac717ba34b891cc2bcf0678c346de75e866071152176c79164f3c9b06215609132571ff8b2ffa6efe0659a0a074cd10d9a08478d46d3448670b76f759ece9c6b7f2e0c9bc088b3e268c812ea29ec669f84f1b5544f382d3807e770049d711cf0d686369ac2cc72ebee398e0ef78db5c80c7188150a92cbaf27364c9fc44d98b04d8205bf0f5368afc63303fafdbf6a31a862361c8b08e7fb194c7d1e75c3b4564fb70888bb5e5a3a8f1bfc73978fc9277cb504ba646a419458daeaf83955a100faaaf943650aa5590f458626e29b18f631e916fb138c49a09f8705b72bf952d8c5ff2b2cf1373a69759fb6e0b481006d256da94ab8775c0e9505e2a5d5f11b8c75185faf4bc93bd6f9d24b399f6a3eb67861fe66907eed22278dc9854d1cec91ffbc0023c75d76dcc5e67996a9f002e5741124e0e29421fec9142c7825a09f333275e69f676c24062608d3fdaabc5914881ac74cbcc7edde857f2c46a6e58d668ad18586f4c4fd46bed40476f525efa7734c3e534c74236239df19a9b3418082eaf1894ad54e3d6ebecdfa1ff0549197a4e689f1ce96212ff4d87568ded651d992ece0cbfdd5fa6fbeb25d7bdb791ed140b4d84bf8832c748045ebbe7523c9ad0efe3cc4792e398d113cc092e18f6a5c242b1922a5dd5b13a1adf5afd673d869bb19e991c4aa044982308f08f010510b95194a8f6a275da672f90fa159cc728a19132f711ea8558ad2e65b0a63f5ea9e8fc87b154e83ce3060bfa106ecdc75b8e4c47f9a78d5c02d63ccbff9392401b8f4fda12a1f664bd8a1700009b199848f097939e76c8636099de6101f7b1f3bb3ccc75a6e66cd774220adfb4a05f766058503be13d5d88aa9cfec0b61b38d4414c7fce6a7fdbb55623a8785678b56b722fe9245f152f36403c7d3e920f6854e1b8a317ed01e1ad4ad252d4399ed8dbf11c6b1814a7a817889f806c39e554575d5ca484030042a0d02562fb7fbecf86af557764e9a176b6f1aae0f53e34b2bebd61f9613465645de60c35ddb84e07a3fb8df29ea28750d8d2246a5a7f36e40a480ccf1357599aca51e96004e04cba467a0c29ea205edc561ecc16f6ca63123f4ee3f1dcd94dc5f3cad64bddf955f04f6e548880be020f3dcdd75e7e583a204d3a6a2fbc09326c2755fb56883eaf28bfcc6b81f2992615acfc0785750b48bb106a9fdb3c4f25ec994cc0f808ce61197acb1cc2b76a538a1a471156be69bb543aede6784694f91c3fbb1379972587da01f44d0c71fad0474971b48b41e2f588d3b2b342273288674f12d18f34c0ec095b8809071d1e53c4320fbb6f82bee5547a1472c8efe3e116760fd09244c6984e3ac00a750cf34f40171ccd75aa5ac20dc9fdd4296ca9b0f3acda8f9c8b90724ccadd6c8a8e1e89493b39c2dbe7dccd97211e49e691ab9bf973d81fbbc0e86c9c01a376dadbd334a941c64d0f47c2a7dea75a7559ae99a89193ae131ac2de2cafbd102ec7ce147c315ed4eea254fc124ca611a1062aab1bd7c067e8a6b96bcf67b6e8ebf8b8c853d2b0bf890447173fb449692e002ae94b9be0042b988f9aa81fd3b1fbc2d24e39bb45367b36b8befdcfc353b7a4741c42906d10430b672d2782afc92a2e61ee12452f05e7df693ab7d7f58144171f23e134f4c388b48becfc8dc1d45a56e09dfaebd7d8e142913c72efc498447eadf37b3b48541a8b24331e5bc4d274beba1d3179b1130ea158500f7c8f773fc8df7ccef4a63ac545cc13002d7ff9d7087871d8e733e947ce2e8af8d72e73807467800036941d8ca71576b5a9983d79520b3943b37213587be5a64cb3f96e57fadddc15d5896729388ef6922e8dfcc1ea4350005f833e9f1858f790eb5d1f09900c2388ca175b0abc5aa303b63824044fa8b20be4a9e4d23325e05fd9bfc3a80f5002531e249a2f9de493d1863e5593183089c5a1babc2b1262e2bcd75ec7a3d8ac10042d862b8249200ebf3d2e17ec3862761b805e447ec163a15d74bd19e8e637a44a49ab1a6c701e18636794510346b045399e310c590dcfd4980cf851af96a6167a943898d0fa00f255edaad15b0be9017d857259bad8f4df874939ab4abb43a3397134d48ca5c6e03a0170cc83b1b3afc408765ac60728c19be3e0333c0e3b00e917fa05788c8f1a94445f378a9d92cb5432365f8d1f65fadb2fbe0b066945fc5fc9c352a5ad428de47773f3d354fe2d2c3cf246ecd38350f45c2c52262e93f443bd3a12cb1aa8db346bb8b9a997be857cb403ea26f299283a24c4721a95fb44ab7fccc990a32b827c517d269e83d284bba4d461a967609c7288e0b3af41a1d91b695fddd6fde08f8269e78d9f61fd2841530264cdd745324b555edf1e16e37e5ddbf836fb282d2319045d991291ae8b770af9342eb3975ddcacd0c2613e300be129a25c94e89877e47bcef42481d4dfc1bfcab3cf89a8feb219416275cf183b91eaa5c55511f61c52370263d9bc9965f858871cb3f5d08eb82f92b4e3a2d5a4e4b8dc0f0f41e4155f5db83a9a1c9c35fcb0f0eb5809c9020a58eca3b638910e069c8650daa14274469ff222b9c076776610dcc203fdfd520a73eeb3bcb2c1bd21d277b79ca8f6838e7445f35a9ea06ceb77a671d0f99591a262ef493e0117becc10d190913c794ec1c2624dd415df3ef82d8315358649684665cfc5217c6ff86a351c0daa385df2caf085a29de291b2389ea7eee62fe5816aef88f11d9b9575f268be0d21287a48e88389531ec6c8ef5307c0da7a11087cfcc8d8059862a401a9ab9528d2034768d41af263da91b7f5adabe5cd6ef7db454f433362dcd091e90d47eb4d0cff98583be0313daad84533bbf03f1486c8c353910f50eb4a0150e3afa372e39cc21e33e65c80a5fb93f81f4315c5350cdf268c2247bf57c1302316da2559c1e5590c1effb52a37af9f3a0e9378f63129cf80d9cd804b4cee0d73bff89ae56977dade37637b407265705285b5982d3dbeb57a92676eb771f195af8974e58d1efe601429e5f19a69d6c0dc7be0f2705ea00737546e8fdd68a71a022f08bb8028b288143ddfca69a31a1f999c355c8bf8e12d89524ee742abd121e6d56f62b173098efb29ed23a92288cc211239f642e50fba40a46dbd0593f91a1b646f2fc1517da5a384de69ff66897af76fa68e1d3e8032afb9e1c4ce91a58c7ac36efd79bcbb5f876dbf36c0c2d4c9f8e34c0fbca9245221e3bd8acf5f448e56a30fa4373a3ca3ebdc67eea8638ce89cc7eea8d79197242feae0c72ee1d42b9fd938e5625a1da5471af7e14be3e9a61fe4d694e9295b8e57ce284117a006c7cadbf9394e4b532febe310dfe414f987636c187fb7995f58599657063024153b25474e81a73c8fa2dac9f02fa9419e9ddb9c3a65d0d518b7721e82c295409267ced31877434b0fe27b7de460b297392d91784fe58d8426bfea1eb1ce7e1655ebdcbb6ead0418a1d7b117d694ea9d3a818ec24d05e4827caf209d9cdc6cd723a07aed331b86e42178f91276dffad9a9d8590381e23506e7b71df9ea9e3f10d2f9635194c28bb766ee256aaa67675c84373eb36206ec5feca0d0e24d3837de6e6a4ffb4bfa1cedc19eab1a6736edee160d7db9bac07eb15b4520e8a53ff430d630fa366383c1a9a4ee8d03f5d32af9838c214d751ea2c151e8fa965e3b5418b47b9f2d3cb1e1e618e3e683be597eb2885bfb86cc385dc51426738ce261cb3e265a7b130f8b53546b6d8c4fe2e7ac2bc81d5a686d03c6a40ba62f0d11af876a81b1b4a5b19437b62e24c661c3bcfa44efdc76625c0eb87d1a80bc490e3fad9094aced8a13254ef56f04e74d89f230d396a87182538beac2de1c6a18768e16ec32da0af3b7da24e2f280d9069f273643a8001c6bdfa36a26eb58cd67924438a1f3bbf751cf121af79efbf4edb4543149306c8598ae20bb6cd4f0407441ed03488e7b1cae261379e5eed7cace05e65ab0aa8f8c79e19edf1c98124318c76ccad6f82171dcd98c21ec56fec9ff5294968dabcd9090b470c251ec44987ec8b474d085fe5f804afedb5e10d946a9dd1efe28e2bd5eeb2cf95b06384ac7a41e7da8b340deff0b2b03629a78fff2db6b9ad54816b32269bbe72cfa788b587d0701c9805767f6834dcf6dd45952b116ee5d83611091a69b3aaabd834475e2fea2eb5d011caaa87f9b9a5a1b9d0663dd18f244a7280818f5f9caceae5db89b4e53ca16561ebbffc013fab86a65a8e65a381fdfa57a0e66456988af3d9a64af5bd93477c8ab66d324d322fe7a1956d6b1d844db61cf952447374ca641a7790aa6bc226a87350d27e445b2495d34860817092c8a4dca1d4d69b40aa5e6851f75579a72cd8e51256cbf857872f0959124b9e8b24674bf413503cf0e8309a364e8b49d81b579771f2f35534038393001bf42e630110917b4a1b197375eb7fef1bb93d204fd6c9322a8aae549d72c94d3553edb0c5bceb0ce88b9cba9b4bddfa9e8a81b5fdbbb8910e985ed8d90c1d9058f5e40320b5d1c88a57ba1e090bfbd43e91f42427647dcafbed34d2c80c6773b09915811ade55d082174a7f96f6e321083563ed4207af1931b18815d2f2a1bda087e25ffe5de6369245cd3daaec41084a5f809bf8a515"}}, 0xffa) 23:56:21 executing program 2: mbind(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x3, &(0x7f0000000200)=0x2, 0x4, 0x0) 23:56:21 executing program 0: pipe2$9p(&(0x7f0000001180)={0xffffffffffffffff, 0xffffffffffffffff}, 0x0) mmap(&(0x7f0000ffb000/0x1000)=nil, 0x1000, 0x6, 0x13, r0, 0x0) 23:56:21 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x0}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:21 executing program 4: r0 = socket$netlink(0x10, 0x3, 0xf) setsockopt$netlink_NETLINK_ADD_MEMBERSHIP(r0, 0x10e, 0x1, &(0x7f0000000000)=0x1b, 0x4) 23:56:21 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/92, 0x5c) 23:56:21 executing program 5: r0 = socket$inet(0x2, 0x4000000000000001, 0x0) setsockopt$inet_tcp_int(r0, 0x6, 0x80000000000002, &(0x7f00000000c0)=0x2000000000000074, 0x25d) bind$inet(r0, &(0x7f0000000440)={0x2, 0x4e23, @broadcast}, 0x10) sendto$inet(r0, 0x0, 0x0, 0x200007fd, &(0x7f0000000040)={0x2, 0x4e23, @local}, 0x10) r1 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r1, 0x0) preadv(r1, &(0x7f0000000280), 0x18, 0xd9f, 0x0) sendto$inet(r0, &(0x7f00000012c0)="0c268a927f1f6588b967481241ba7860005cf65ac618ded8974895abeaf4b4834ff922b3f1e0b02bd67aa03059bcecc7a95425a3a07e758044ab4ea6f7ae55d88fecf90b1a7511bf746bec66ba", 0xfe6a, 0x11, 0x0, 0x27) shutdown(r0, 0x1) recvmsg(r0, &(0x7f0000001500)={0x0, 0x0, &(0x7f0000002200)}, 0x100) 23:56:21 executing program 2: mlock2(&(0x7f0000ffb000/0x4000)=nil, 0x4000, 0x0) mbind(&(0x7f0000ffa000/0x4000)=nil, 0x4000, 0x1, 0x0, 0x0, 0x3) 23:56:21 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x2}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:21 executing program 0: mremap(&(0x7f0000ff4000/0x3000)=nil, 0x3000, 0x4000, 0x3, &(0x7f0000ffc000/0x4000)=nil) mremap(&(0x7f0000cdc000/0x2000)=nil, 0x2000, 0x1000, 0x3, &(0x7f0000ffc000/0x1000)=nil) 23:56:21 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) mmap(&(0x7f0000ffc000/0x3000)=nil, 0x3000, 0x6, 0x12, r0, 0x0) 23:56:22 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/34, 0x22) 23:56:22 executing program 2: r0 = shmget$private(0x0, 0x1000, 0x0, &(0x7f0000fff000/0x1000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) mlock(&(0x7f0000ffd000/0x2000)=nil, 0x2000) 23:56:22 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x8}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:22 executing program 4: r0 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) connect$inet6(r0, &(0x7f00000003c0)={0xa, 0x0, 0x0, @mcast2, 0x4}, 0x1c) setsockopt$SO_BINDTODEVICE(r0, 0x1, 0x19, &(0x7f0000000000)='bridge0\x00', 0x10) perf_event_open(&(0x7f0000000000)={0x1000000002, 0x80, 0x800000000000013, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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) write(r0, &(0x7f00000000c0)="8f2a0b65bd8c", 0x6) 23:56:22 executing program 0: mlock(&(0x7f0000ffb000/0x4000)=nil, 0x4000) fork() mlock(&(0x7f0000ff2000/0xe000)=nil, 0xe000) 23:56:23 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a240)=""/223, 0xdf) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a180)=""/190, 0xbe) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001180)=""/102400, 0x19000) 23:56:23 executing program 2: pipe(&(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) vmsplice(r1, &(0x7f0000000900)=[{&(0x7f0000000080)="e5", 0x1}, {&(0x7f0000000100)='~', 0x1}], 0x2, 0x0) r2 = socket$inet_udp(0x2, 0x2, 0x0) close(r2) write$binfmt_misc(r1, &(0x7f0000000180)=ANY=[], 0x4240a2a0) socketpair(0x1, 0x1, 0x0, &(0x7f00000000c0)) r3 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r3, 0x0) preadv(r3, &(0x7f0000000280), 0x18, 0xd9f, 0x0) splice(r0, 0x0, r2, 0x0, 0x19403, 0x0) 23:56:23 executing program 5: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000080), 0x0, 0x0) mmap$perf(&(0x7f0000ff3000/0xd000)=nil, 0xd000, 0x0, 0x104053, r0, 0x0) 23:56:23 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:23 executing program 4: mbind(&(0x7f0000ff9000/0x3000)=nil, 0x3000, 0x1, 0x0, 0x0, 0x0) mprotect(&(0x7f0000ffb000/0x1000)=nil, 0x1000, 0x0) 23:56:23 executing program 0: prctl$PR_SET_PTRACER(0x59616d61, 0xffffffffffffffff) clone(0x100, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r0 = gettid() wait4(0x0, 0x0, 0x40000000, 0x0) vmsplice(0xffffffffffffffff, &(0x7f00000000c0)=[{0x0}, {0x0}, {0x0, 0x13}, {&(0x7f0000002500)="82bb7102cc65c9ca91e9a868377ce2", 0x9}], 0x4, 0x0) ptrace$setopts(0x4206, r0, 0x0, 0x0) tkill(r0, 0x36) ptrace$cont(0x18, r0, 0x0, 0x0) clone(0x0, &(0x7f0000000000)="bc833ae58b44cb864853c7f11261759e1c1cb49f2c93a17a9bb15aa16e97f71ae1551b7a476246f815cf12a26793fcb317c9eedaaca36c00346e1aa5c324b8b586749ec5b2e8c5addd66e3abf28f9ef31d5d7d78becc8fea163b33467424000b960591e2a7433a44ff9bc5bfbe2d9e011b74d792de7e5c07f5984885565e516fa75d5c83e5bee3ae09f704e737fee575204efd51c3551109c97e95dbc32a5fb62e97ce6c4802d71998d943471906fed04f7e848c551d306e1b0087", 0x0, 0x0, 0x0) ptrace$setregs(0xd, r0, 0x0, &(0x7f0000000080)) ptrace$cont(0x20, r0, 0x0, 0x0) 23:56:23 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/179, 0xb3) 23:56:24 executing program 0: mlock2(&(0x7f0000ffd000/0x3000)=nil, 0x3000, 0x0) madvise(&(0x7f0000ffc000/0x4000)=nil, 0x4000, 0x3) 23:56:24 executing program 5: memfd_create(&(0x7f0000000040)='\x00', 0x2) 23:56:24 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x2}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:24 executing program 4: syz_emit_ethernet(0x7a, &(0x7f0000000080)={@remote, @local, @void, {@ipv6={0x86dd, @gre_packet={0x0, 0x6, "5180dd", 0x44, 0x2f, 0x0, @private1, @mcast1}}}}, 0x0) 23:56:24 executing program 3: r0 = socket$inet6_mptcp(0xa, 0x1, 0x106) ioctl$BTRFS_IOC_START_SYNC(r0, 0x80089418, &(0x7f0000001100)) getsockopt$inet_IP_XFRM_POLICY(0xffffffffffffffff, 0x0, 0x11, &(0x7f0000001000)={{{@in, @in6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, {{}, 0x0, @in=@broadcast}}, &(0x7f0000001180)=0xe4) setsockopt$inet6_IPV6_PKTINFO(r0, 0x29, 0x32, &(0x7f0000001140)={@remote, r1}, 0x14) write$binfmt_elf64(r0, &(0x7f0000001440)={{0x7f, 0x45, 0x4c, 0x46, 0x80, 0x20, 0x8, 0x40, 0xfffffffffffff001, 0x2, 0x3, 0x9, 0x4a, 0x40, 0x5d, 0x2, 0x9, 0x38, 0x1, 0x1, 0x2bc}, [{0x4, 0x0, 0x0, 0x2000, 0x0, 0x2, 0xb3, 0x9}], "1ecb9bf7de78e133746640df59d3b17b607fbcab009180ce4853445e9d0936fad9533de6d968bb70c87f410a3747a7fd07e32c5153677d9ddfe76b1e6959c19000194560a6c092361e93260dc08253ad929605c41c00fc4dfe45257cf4ef06a994a504126c1178529d67ced34070723e7835ddfbbef2cf14264822f87735c7b85bb8dd6320d0c4cb3526ac8fef0034a947a57be7da04b3548d4a9b33b3fc9a358893d53d0e", ['\x00', '\x00', '\x00', '\x00', '\x00', '\x00']}, 0x71d) r2 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r2}, 0x2c, {'rootmode', 0x3d, 0x4000}}) read$FUSE(r2, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r2, &(0x7f0000004200)={0xfffffffffffffd30, 0xfffffffffffffff5, r3, {0x7, 0x1f, 0xfffffffd, 0x8020, 0x0, 0x0, 0x0, 0x4003}}, 0x65) syz_fuse_handle_req(r2, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r4 = fcntl$dupfd(r2, 0x0, r2) syz_fuse_handle_req(r4, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) connect$inet6(r4, &(0x7f00000011c0)={0xa, 0x4e22, 0x2, @remote, 0xfffffff7}, 0x1c) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:24 executing program 2: write$tcp_congestion(0xffffffffffffffff, &(0x7f0000000080)='lp\x00', 0x3) madvise(&(0x7f0000000000/0x1000)=nil, 0x1000, 0x12) 23:56:24 executing program 5: r0 = memfd_create(&(0x7f0000000000)='[^\'&/-\xc2#+\x00', 0x0) mmap(&(0x7f0000fdb000/0x3000)=nil, 0x3000, 0x0, 0x10, r0, 0x0) 23:56:24 executing program 0: sendmsg$netlink(0xffffffffffffffff, &(0x7f0000003b00)={0x0, 0x0, 0x0}, 0x0) mprotect(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x0) shmat(0x0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) 23:56:24 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x3}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:24 executing program 4: pipe2$9p(&(0x7f0000000000)={0xffffffffffffffff}, 0x0) ioctl$BTRFS_IOC_TREE_SEARCH(r0, 0xd0009411, 0x0) 23:56:25 executing program 3: ioctl$DRM_IOCTL_GET_CLIENT(0xffffffffffffffff, 0xc0186405, &(0x7f0000000000)={0x80000001, 0x3ef4, {0x0}, {0xee01}, 0x7ff}) r1 = getpid() rt_tgsigqueueinfo(r1, r1, 0x15, &(0x7f00000000c0)) ptrace(0x10, r1) r2 = socket$tipc(0x1e, 0x5, 0x0) bind$tipc(r2, &(0x7f0000000000)=@name={0x1e, 0x2, 0x3, {{0x43}}}, 0x10) socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000500)={0xffffffffffffffff, 0xffffffffffffffff}) kcmp(r1, r0, 0x4, r2, r3) ptrace$getregset(0x4204, r1, 0x2, &(0x7f0000001880)={&(0x7f0000001800)=""/104, 0x68}) kcmp(r0, r1, 0x2, 0xffffffffffffffff, 0xffffffffffffffff) r4 = clone3(&(0x7f0000000300)={0xc0800000, &(0x7f0000000140), &(0x7f0000000180), &(0x7f00000001c0), {0x6}, &(0x7f0000000200)=""/27, 0x1b, &(0x7f0000000240)=""/120, &(0x7f00000002c0)=[r1, r1, r1, r1, r0, r0, r1], 0x7}, 0x58) r5 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) read$FUSE(r5, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r5, &(0x7f0000004200)={0x50, 0x0, r6, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r5, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) getsockopt$inet6_IPV6_XFRM_POLICY(0xffffffffffffffff, 0x29, 0x23, &(0x7f0000000380)={{{@in=@remote, @in6=@remote, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, {{@in=@private}}}, &(0x7f0000000480)=0xe4) ioctl$DRM_IOCTL_GET_CLIENT(0xffffffffffffffff, 0xc0186405, &(0x7f00000004c0)={0x3f, 0xfffffffa, {r4}, {r7}, 0x35, 0x4}) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000019040)=""/102378, 0xfffffffffffffff6) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000040)=""/71, 0x47) 23:56:25 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) connect$netlink(r0, &(0x7f0000000180)=@unspec, 0xc) 23:56:25 executing program 2: mlock(&(0x7f0000ff2000/0x3000)=nil, 0x3000) mremap(&(0x7f0000ffd000/0x2000)=nil, 0x2000, 0x4000, 0x3, &(0x7f0000ff5000/0x4000)=nil) 23:56:25 executing program 0: socketpair(0x2, 0x3, 0x80, 0x0) 23:56:25 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x4}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:25 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$SEG6(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$SEG6_CMD_SET_TUNSRC(r0, &(0x7f0000000140)={&(0x7f0000000000), 0xc, &(0x7f0000000100)={&(0x7f0000000080)={0x14, r1, 0x1}, 0x14}}, 0x0) [ 379.516508][T13551] IPVS: ftp: loaded support on port[0] = 21 23:56:25 executing program 5: r0 = socket$netlink(0x10, 0x3, 0xc) setsockopt$netlink_NETLINK_DROP_MEMBERSHIP(r0, 0x10e, 0x2, &(0x7f00000002c0)=0xb, 0x4) 23:56:25 executing program 2: r0 = socket$inet_tcp(0x2, 0x1, 0x0) sendmsg$SEG6_CMD_DUMPHMAC(r0, &(0x7f0000000300)={&(0x7f0000000200), 0xc, &(0x7f00000002c0)={0x0, 0x4c}}, 0x2008c854) 23:56:26 executing program 0: r0 = shmget$private(0x0, 0x3000, 0x0, &(0x7f0000ffd000/0x3000)=nil) shmat(r0, &(0x7f0000ffc000/0x3000)=nil, 0x4000) shmat(0x0, &(0x7f0000ffe000/0x2000)=nil, 0x7000) 23:56:26 executing program 4: pipe(&(0x7f0000000040)={0xffffffffffffffff, 0xffffffffffffffff}) r2 = socket$inet_udp(0x2, 0x2, 0x0) r3 = socket$inet(0x2, 0x4000000000080001, 0x0) setsockopt$IPT_SO_SET_REPLACE(r3, 0x0, 0x40, &(0x7f0000000200)=ANY=[@ANYBLOB="726177000000000000000000000000000000000000000000000000000000000108f80000030000003003000098020000000000000000000000000000000000009802000098020000980200009802000098020000030080000000000000000000ffffffffe00000010000000000000000e4000000010000000000bd00000000007465616d5f736c6176655f310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c001080200000000000000000000000000000000000000005001686173686c696d6974000000000000000000000000000000000000000002726f736530000000000000000000000000000000000000000000000000000000000000e4ff08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006c0000000000000000210000000000000000000000000000000000000000000000fcffffffffffffff00000000000000000000000003000000070000000000000000000000000000004800435400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000200000000000000000000000000400000000000000000000000000000070009000000000094100000000000000000000000000000020004e4f545241434b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007000980000000000000000000000000000000000000000002800000000000000004000000000000000000000000000000000000000000000feffffff"], 0x1) close(r2) connect$packet(0xffffffffffffffff, &(0x7f0000000180)={0x11, 0x0, 0x0, 0x1, 0x0, 0x6, @link_local}, 0x14) write$binfmt_misc(r1, &(0x7f0000000180)=ANY=[], 0x4240a2a0) socket$inet(0x2, 0x200000003, 0x84) bind$inet(r2, &(0x7f00000001c0)={0x2, 0x0, @remote}, 0x10) connect$inet(r2, &(0x7f0000001280)={0x2, 0x0, @multicast2}, 0x10) r4 = openat(0xffffffffffffff9c, &(0x7f0000000000)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x1800003, 0x12, r4, 0x0) preadv(r4, &(0x7f0000000280), 0x18, 0xd9f, 0x0) splice(r0, 0x0, r2, 0x0, 0x19403, 0x0) 23:56:26 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x5}, {}, {0x8}}}, 0x24}}, 0x0) [ 380.353837][T13554] IPVS: ftp: loaded support on port[0] = 21 23:56:26 executing program 5: r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x40402, 0x0) write$tun(r0, 0x0, 0x0) 23:56:27 executing program 3: ioctl$FS_IOC_FIEMAP(0xffffffffffffffff, 0xc020660b, &(0x7f0000001000)={0x401, 0x2, 0x6, 0x9, 0x9, [{0x100000000, 0x20, 0x800, '\x00', 0x284}, {0x4, 0x1, 0x52aa, '\x00', 0x8}, {0x4, 0x68, 0x6, '\x00', 0x1848}, {0x3, 0x9, 0xe7, '\x00', 0x802}, {0x180000000000000, 0xed4, 0xe8, '\x00', 0x401}, {0xfffffffffffffff9, 0xa5, 0x0, '\x00', 0x180e}, {0x1ff, 0x0, 0x5, '\x00', 0x2000}, {0x0, 0x5, 0x7000, '\x00', 0x658a}, {0x86, 0x0, 0x7, '\x00', 0x200}]}) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:27 executing program 2: shmget(0x1, 0x800000, 0x0, &(0x7f00007fe000/0x800000)=nil) 23:56:27 executing program 0: mlock(&(0x7f0000ff9000/0x4000)=nil, 0x4000) mlock2(&(0x7f0000ffa000/0x4000)=nil, 0x4000, 0x0) 23:56:27 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x6}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:27 executing program 5: r0 = openat$tun(0xffffffffffffff9c, &(0x7f0000000040), 0x1e1402, 0x0) write$tun(r0, 0x0, 0x0) 23:56:27 executing program 2: syz_emit_ethernet(0x7a, &(0x7f0000000000)={@local, @link_local, @void, {@ipv6={0x86dd, @gre_packet={0x0, 0x6, "e64420", 0x44, 0x2f, 0x0, @local, @private2}}}}, 0x0) 23:56:27 executing program 5: perf_event_open(&(0x7f0000000000)={0x1000000002, 0x80, 0x12, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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$loop(0x0, 0x0, 0x10d082) r1 = bpf$MAP_CREATE(0x0, &(0x7f0000733000)={0x5, 0x5, 0xcc, 0x9}, 0x2c) r2 = bpf$MAP_CREATE(0x0, &(0x7f00004f9fe4)={0xc, 0x4, 0x4, 0x100000001, 0x0, r1}, 0x2c) bpf$MAP_GET_NEXT_KEY(0x4, &(0x7f0000000340)={r2, 0x0, 0x0}, 0x20) sendmsg$nl_route(0xffffffffffffffff, &(0x7f00000000c0)={0x0, 0x0, 0x0}, 0x0) ioctl$LOOP_SET_CAPACITY(r0, 0x4c07) clone(0x0, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) 23:56:28 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x7}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:28 executing program 0: r0 = gettid() prctl$PR_SET_PTRACER(0x59616d61, r0) clone(0x86a01780, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r1 = gettid() wait4(0x0, 0x0, 0x80000002, 0x0) bpf$BPF_BTF_LOAD(0x12, &(0x7f00000000c0)={&(0x7f0000000300)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0x88, 0x88, 0x6, [@union={0x0, 0x1, 0x0, 0x5, 0x0, 0x0, [{}]}, @restrict, @enum={0x0, 0x6, 0x0, 0x6, 0x4, [{}, {}, {}, {}, {}, {}]}, @int, @fwd, @func]}, {0x0, [0x0, 0x0, 0x0, 0x0]}}, 0x0, 0xa6}, 0x20) vmsplice(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000040)}, {&(0x7f0000000000)="0832f497d38350418e4bb321019511dc5df26e9a0b90cb6974f527cc14538d1efb1ffe03284f6d33265be9c604c893f20e96beeb2aa4c457ac37a3a3f1ce8682500fcecd80", 0x45}], 0x0, 0x0) ptrace$setopts(0x4206, r1, 0x0, 0x0) tkill(r1, 0x33) ptrace$setregs(0xd, r1, 0x0, &(0x7f0000000080)) ptrace$cont(0x7, r1, 0x0, 0x0) 23:56:28 executing program 4: r0 = gettid() prctl$PR_SET_PTRACER(0x59616d61, r0) clone(0x86a01780, 0x0, 0xfffffffffffffffe, 0x0, 0xffffffffffffffff) r1 = gettid() wait4(0x0, 0x0, 0x80000002, 0x0) bpf$BPF_BTF_LOAD(0x12, &(0x7f00000000c0)={&(0x7f0000000300)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xa0, 0xa0, 0x6, [@union={0x0, 0x1, 0x0, 0x5, 0x0, 0x0, [{}]}, @restrict, @enum={0x0, 0x6, 0x0, 0x6, 0x4, [{}, {}, {}, {}, {}, {}]}, @array, @int, @fwd, @func]}, {0x0, [0x0, 0x0, 0x0, 0x0]}}, 0x0, 0xbe}, 0x20) vmsplice(0xffffffffffffffff, &(0x7f0000000100)=[{&(0x7f0000000040)}, {&(0x7f0000000000)="0832f497d38350418e4bb321019511dc5df26e9a0b90cb6974f527cc14538d1efb1ffe03284f6d33265be9c604c893f20e96beeb2aa4c457ac37a3a3f1ce8682500fcecd80", 0x45}], 0x0, 0x0) ptrace$setopts(0x4206, r1, 0x0, 0x0) tkill(r1, 0x33) ptrace$setregs(0xd, r1, 0x0, &(0x7f0000000080)) ptrace$cont(0x7, r1, 0x0, 0x0) 23:56:28 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/131, 0x83) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/123, 0x7b) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001140)=""/13, 0xd) 23:56:28 executing program 2: r0 = socket$netlink(0x10, 0x3, 0x0) r1 = socket(0x200000000000011, 0x3, 0x0) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000080)={'bridge0\x00', 0x0}) sendmsg$nl_route(r0, &(0x7f0000000080)={0x0, 0x0, &(0x7f0000000240)={&(0x7f0000000440)=@newlink={0x40, 0x10, 0x401, 0x0, 0x0, {0x0, 0x0, 0x0, r2}, [@IFLA_LINKINFO={0x20, 0x12, 0x0, 0x1, @bond_slave={{0xf}, {0xc, 0x5, 0x0, 0x1, @IFLA_BOND_SLAVE_QUEUE_ID={0x6}}}}]}, 0x40}}, 0x0) 23:56:28 executing program 0: r0 = fork() tkill(r0, 0x26) 23:56:28 executing program 5: socketpair(0x11, 0x0, 0x0, &(0x7f0000000180)) 23:56:28 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x8}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:28 executing program 4: bpf$BPF_PROG_WITH_BTFID_LOAD(0x5, &(0x7f0000000200)=@bpf_lsm={0x1d, 0xa, &(0x7f0000000280)=ANY=[], &(0x7f0000000080)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x1b, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) 23:56:29 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4101, 0x1005) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:29 executing program 2: openat$pfkey(0xffffffffffffff9c, &(0x7f0000000300), 0x0, 0x0) socket$nl_generic(0x10, 0x3, 0x10) r0 = openat$tcp_congestion(0xffffffffffffff9c, &(0x7f0000000880), 0x1, 0x0) write$tcp_congestion(r0, &(0x7f00000008c0)='htcp\x00', 0x5) socket(0x1d, 0x0, 0x0) 23:56:29 executing program 0: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$NFULNL_MSG_CONFIG(r0, &(0x7f0000000180)={0x0, 0x0, &(0x7f0000000140)={&(0x7f00000000c0)={0x24, 0x1, 0x4, 0x301, 0x0, 0x0, {}, [@NFULA_CFG_CMD={0x5, 0x1, 0x1}, @NFULA_CFG_NLBUFSIZ={0x8, 0x3, 0x1, 0x0, 0x7fff}]}, 0x24}}, 0x0) 23:56:29 executing program 5: r0 = openat$null(0xffffffffffffff9c, &(0x7f0000000440), 0x0, 0x0) ioctl$TUNGETFILTER(r0, 0xc0045878, 0x0) 23:56:29 executing program 4: r0 = socket$inet_udp(0x2, 0x2, 0x0) ioctl$sock_SIOCGIFINDEX_80211(r0, 0x8933, 0x0) 23:56:29 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x9}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:29 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/135, 0x87) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/142, 0x8e) [ 383.759223][T13674] can: request_module (can-proto-0) failed. [ 383.881015][T13674] can: request_module (can-proto-0) failed. [ 383.922509][ T1983] Bluetooth: hci3: command 0x0406 tx timeout 23:56:30 executing program 0: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000001900)={0x11, 0x2, &(0x7f0000001a00)=@raw=[@map_val={0x18, 0x0, 0x2, 0x0, 0x1}], &(0x7f0000001780)='syzkaller\x00', 0x7, 0xba, &(0x7f00000017c0)=""/186, 0x0, 0xa, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) 23:56:30 executing program 2: bpf$BPF_BTF_GET_FD_BY_ID(0x13, &(0x7f0000000100)=0xffffffffffffffff, 0x4) 23:56:30 executing program 5: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000240)={0x10, 0x3, &(0x7f0000000080)=@framed, &(0x7f0000000040)='GPL\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0}, 0x78) 23:56:30 executing program 4: unlink(&(0x7f00000002c0)='./file0\x00') bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000001b80)={0x18, 0x6, &(0x7f0000001940)=@framed={{}, [@exit, @btf_id={0x18, 0x4, 0x3, 0x0, 0x3}]}, &(0x7f00000019c0)='syzkaller\x00', 0x1, 0xdd, &(0x7f0000001a00)=""/221, 0x41000, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000001b00)={0x8, 0x4}, 0x8, 0x10, &(0x7f0000001b40)={0x0, 0x2, 0x9, 0x1f8f}, 0x10}, 0x78) bpf$ITER_CREATE(0x21, &(0x7f0000001dc0), 0x8) r0 = socket$kcm(0x29, 0x5, 0x0) sendmsg(r0, &(0x7f0000005940)={&(0x7f0000003480)=@xdp={0x2c, 0xf, 0x0, 0x1}, 0x80, &(0x7f00000047c0)=[{0x0}, {0x0}], 0x2}, 0x0) 23:56:30 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000010c0)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/186, 0xba) 23:56:30 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0xf}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:30 executing program 0: bpf$MAP_CREATE(0x0, &(0x7f0000000100)={0x5, 0x0, 0x0, 0x0, 0x4e2}, 0x40) 23:56:31 executing program 5: openat$ppp(0xffffffffffffff9c, &(0x7f0000000000), 0x80001, 0x0) 23:56:31 executing program 2: r0 = syz_open_procfs(0x0, &(0x7f0000000000)='net/igmp6\x00') read$char_usb(r0, 0x0, 0x0) 23:56:31 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/4084, 0xfee5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/91, 0x5b) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/212, 0xd4) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000140)=""/216, 0xd8) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002440)=""/102383, 0x18fef) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000080)=""/130, 0x82) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000003c0)=""/225, 0xe1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000300)=""/172, 0xac) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000240)=""/137, 0x89) 23:56:31 executing program 4: r0 = openat$ttyS3(0xffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl$TCSETAF(r0, 0x2, &(0x7f0000000080)={0x0, 0x0, 0x0, 0x0, 0x0, "ccf4103fe7cfe866"}) 23:56:31 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x60}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:31 executing program 0: syz_open_procfs(0x0, 0x0) seccomp$SECCOMP_SET_MODE_FILTER_LISTENER(0x1, 0x0, &(0x7f0000000080)={0x1, &(0x7f0000000040)=[{0x6}]}) recvfrom$packet(0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0) 23:56:31 executing program 2: r0 = openat$ptmx(0xffffff9c, &(0x7f0000000000), 0x0, 0x0) syz_open_dev$tty20(0xc, 0x4, 0x0) ioctl$TCSETAF(r0, 0x5408, &(0x7f00000002c0)={0x0, 0x0, 0x0, 0xfff7, 0x0, "c8f9aa6942d3b565"}) 23:56:31 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) 23:56:31 executing program 5: pipe(&(0x7f0000000000)={0xffffffffffffffff}) ioctl$KVM_CREATE_VCPU(0xffffffffffffffff, 0xae41, 0x0) ioctl$KVM_SET_REGS(0xffffffffffffffff, 0x4090ae82, 0x0) recvmmsg(0xffffffffffffffff, &(0x7f0000003140)=[{{&(0x7f0000001400)=@ipx, 0x80, 0x0}}], 0x1, 0x0, 0x0) flock(r0, 0x4f26bcf88be88977) perf_event_open(&(0x7f0000001340)={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_bp={0x0}}, 0x0, 0x0, 0xffffffffffffffff, 0x0) r1 = syz_open_procfs(0x0, &(0x7f0000000040)='fdinfo/3\x00') preadv(r1, &(0x7f00000017c0), 0x333, 0x0, 0x0) 23:56:32 executing program 4: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={0x0}, 0x8}, 0x0) 23:56:32 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0xb7}, {}, {0x8}}}, 0x24}}, 0x0) [ 386.087778][ T34] audit: type=1326 audit(1619740592.136:85): auid=4294967295 uid=0 gid=0 ses=4294967295 subj==unconfined pid=13722 comm="syz-executor.0" exe="/root/syz-executor.0" sig=31 arch=40000003 syscall=403 compat=1 ip=0xf7f07549 code=0x0 23:56:32 executing program 3: r0 = mmap$IORING_OFF_CQ_RING(&(0x7f0000ffb000/0x2000)=nil, 0x2000, 0x2000000, 0x11, 0xffffffffffffffff, 0x8000000) r1 = io_uring_register$IORING_REGISTER_PERSONALITY(0xffffffffffffffff, 0x9, 0x0, 0x0) syz_io_uring_submit(r0, 0x0, &(0x7f0000001080)=@IORING_OP_OPENAT2={0x1c, 0x3, 0x0, 0xffffffffffffff9c, &(0x7f0000001000)={0x555900, 0x40, 0xa}, &(0x7f0000001040)='./file0\x00', 0x18, 0x0, 0x12345, {0x0, r1}}, 0xffffffff) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:32 executing program 4: r0 = syz_io_uring_setup(0x710d, &(0x7f0000000080), &(0x7f0000ee8000/0x4000)=nil, &(0x7f0000146000/0x3000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000180)=0x0) r3 = openat$autofs(0xffffff9c, &(0x7f0000000040), 0x0, 0x0) syz_io_uring_submit(r1, r2, &(0x7f00000001c0)=@IORING_OP_CONNECT={0x10, 0x0, 0x0, r3, 0x80, &(0x7f0000000200)=@tipc, 0x0, 0x0, 0x1}, 0x0) io_uring_enter(r0, 0x393c, 0x0, 0x0, 0x0, 0x0) 23:56:32 executing program 2: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x4000012, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009032, 0xffffffffffffffff, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)='mqueue\x00', 0x0, 0x0) r2 = creat(&(0x7f0000000100)='./file0/bus\x00', 0x0) mq_notify(r2, &(0x7f00000000c0)={0x0, 0x0, 0x1, @thr={0x0, 0x0}}) 23:56:32 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:32 executing program 5: r0 = openat$ttyS3(0xffffff9c, &(0x7f0000000000), 0x0, 0x0) ioctl$TCSETAF(r0, 0x545d, &(0x7f0000000080)={0x0, 0x0, 0x0, 0x0, 0x0, "ccf4103fe7cfe866"}) [ 386.916069][ T34] audit: type=1326 audit(1619740592.966:86): auid=4294967295 uid=0 gid=0 ses=4294967295 subj==unconfined pid=13722 comm="syz-executor.0" exe="/root/syz-executor.0" sig=31 arch=40000003 syscall=403 compat=1 ip=0xf7f07549 code=0x0 [ 386.966244][ T3129] ieee802154 phy0 wpan0: encryption failed: -22 [ 386.973029][ T3129] ieee802154 phy1 wpan1: encryption failed: -22 23:56:33 executing program 0: socket$inet_tcp(0x2, 0x1, 0x0) r0 = syz_open_dev$tty20(0xc, 0x4, 0x1) write$tun(r0, &(0x7f0000001840)={@void, @void, @x25={0x0, 0x0, 0x0, "26a7c44b65f456bfd72c2fcf3fb20f7bd702d9ff75af9634f501e3a722c3a1"}}, 0x22) 23:56:33 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/21, 0x15) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:33 executing program 4: pipe(&(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) write$binfmt_misc(r1, &(0x7f0000000440)=ANY=[], 0x4240a2a0) r2 = socket$inet6_icmp_raw(0xa, 0x3, 0x3a) setsockopt$inet6_IPV6_HOPOPTS(r2, 0x29, 0x36, &(0x7f00000000c0)=ANY=[], 0x8) perf_event_open(&(0x7f0000000040)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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={0x3}, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffffe}, 0x0, 0x0, 0xffffffffffffffff, 0x0) connect$inet6(r2, &(0x7f00000003c0)={0xa, 0x0, 0x0, @mcast2, 0x4}, 0x1c) splice(r0, 0x0, r2, 0x0, 0x30005, 0x0) 23:56:33 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x2}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:33 executing program 5: bpf$BPF_BTF_LOAD(0x12, &(0x7f0000000380)={&(0x7f0000000280)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0x0, 0x0, 0x2}, {0x2}}, &(0x7f00000002c0)=""/160, 0x1a, 0xa0, 0x1}, 0x20) 23:56:34 executing program 0: r0 = syz_io_uring_setup(0x710d, &(0x7f0000000080), &(0x7f0000ffd000/0x3000)=nil, &(0x7f0000146000/0x3000)=nil, &(0x7f0000000000)=0x0, &(0x7f0000000180)=0x0) syz_io_uring_submit(r1, r2, &(0x7f00000001c0)=@IORING_OP_FSYNC={0x3, 0x4, 0x0, @fd_index}, 0x0) io_uring_enter(r0, 0xd81, 0x0, 0x0, 0x0, 0x0) 23:56:34 executing program 2: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x4000012, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009032, 0xffffffffffffffff, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)='mqueue\x00', 0x0, 0x0) r2 = creat(&(0x7f0000000100)='./file0/bus\x00', 0x0) mq_notify(r2, &(0x7f00000000c0)={0x0, 0x0, 0x1, @thr={0x0, 0x0}}) 23:56:34 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a440)=""/102396, 0x28) 23:56:34 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x3}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:34 executing program 5: r0 = syz_open_procfs(0xffffffffffffffff, &(0x7f0000000040)='uid_map\x00') write$tcp_congestion(r0, 0x0, 0x0) 23:56:35 executing program 0: bpf$BPF_BTF_LOAD(0x12, &(0x7f0000002440)={&(0x7f0000000080)=ANY=[], &(0x7f0000001440)=""/4096, 0x37, 0x1000, 0x8}, 0x20) 23:56:35 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/134, 0x86) 23:56:35 executing program 4: r0 = getpid() sched_setscheduler(r0, 0x5, &(0x7f0000000040)) perf_event_open(&(0x7f0000000280)={0x1, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x41bd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @perf_bp={0x0}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r1 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r2 = ioctl$KVM_CREATE_VM(r1, 0xae01, 0x0) fork() ioctl$KVM_SET_IRQCHIP(r2, 0x4020aeb2, &(0x7f00000003c0)={0x0, 0x0, @ioapic={0x0, 0x0, 0x0, 0x0, 0x0, [{}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {0x8}]}}) 23:56:35 executing program 2: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x4000012, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009032, 0xffffffffffffffff, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)='mqueue\x00', 0x0, 0x0) r2 = creat(&(0x7f0000000100)='./file0/bus\x00', 0x0) mq_notify(r2, &(0x7f00000000c0)={0x0, 0x0, 0x1, @thr={0x0, 0x0}}) 23:56:35 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}}, 0x0, 0xffffffffffffffff, 0xffffffffffffffff, 0x0) r0 = bpf$PROG_LOAD(0x5, &(0x7f0000000200)={0xc, 0xe, &(0x7f0000000e40)=ANY=[@ANYBLOB="b702000005000000bfa30000000000000703000000feffff7a0af0fff8ffffff79a4f0ff00000000b7060000ffffffff2d6405000000000065040400010000000404000001007d60b7030000000000006a0a00fe00000000850000000d000000b7000000000000009500000000000000e3a333a0daf2f776d067cae8f0b414a5b43451c0e17a606fec6890123d27e7cf43548ee85857ad4a77cb56e0fcb3dfd4e70eaec677d6ac14c2c794f72cbf5fe31789e70227bfd8115efd90c8c48258f8dbe82e16cf00000000000000000000000000006fc0000000000000000000000200e27d45d54b107c8c247f195e32f13799d67074f332ff48bc085760314166443ce72c74f3db890e1ff15a10d91f27ad2a986e0e244bd117252e47ffda1a869db7135480dae93c7e33bdef00000000d8fd8c79a5d0967ab7e43686b4d1e03e326beea7905ef7de3749f8bc8143df20d13c37db269971210fab7071cc3094078a044777aab9d86cf50afefd7b72a0950d389bc9cb43aa607b7269561dd50b22bd2491331818a10f2ac8c3249582a20d4e04fd1ab7883f656b84137d3a8abf93b280ea53ce01dcc2d30f4310e8281b0cdc017f9759060ea88a2f65974b84c16fd56ee452e411d75ab7613b648c9dd00b0676c14ba7580b2a0942394ed1577517eed1c892422f54d5a2e1cf1a60fe2dcc1a465aa8d54cb4000053c3f01ea714a7bd644b4a44b807c9765cc7ef43c3cc0a6ad3d3976656d475dd2ed7890002003884e042acb104431333b50ff695516c1dd2e35f09c7a1f97f9561f62837e1d38eab98e6a7285bb0c6c1d0b9abc4b5705eb1073fe63e88f6ff7e510c2795288a69aa52ff32a89c9bd496d5d61d02cd950200226b3098ec9215fcf5becbfd7b53b4c65b74873ae66ba6d7376bc7354c34a49c0421c2000000000000000000000000000000005e47c1670fc64665a1a3dea938412ca0c34481f906105b896d62f703c498a564ff343653340a395c8674f89d0c0ef2a917688e6e715d10304f0598f4d84eac3f274bd6bf8bf4ff1debec97688098ba400ee2af878a1393280849e0bca76d8efc414aa97260b9083b2f1bd26805c2f03779e3719018f7783096d7378d8cc8053e873fc47bf325faa840fd945cedfcd552387c913215cdef271e32cc650d9703740dfad32562f743a8ab4c7a8ee847ac1a196f9d479a87c3a49659521c7856b5933cd0846e22726487129139711272c3ee6b0bb8b192f03ea887f05fd9b87d19ef681c1e0a87a9e467e6082b267ac473ddbb2972f9e6cade9cf939262f007c22728040ebd31f581b1e23bcda95b2d75a6a14b0c17775d1bf5a443670f49cd5302882c342b72bd9957beb3891fbe7025afc604997a23c50111c3525872df4df58e973659004fea024389347402d21310612ef949083fbd7d40e36af5a4a4159f53aac141395dd106567de87b043ae91c67bd1dfc2e5133c60f7616ec546584132d47c01eadca4d08e6b38d5a5a779bb960640d39413c503b3d2823d7c1fb0476e1081e0af97dc58e59a1becd660c689fa807579b746cff9d89c1415385fe30d8f484d6ef067ed1d2837c6dc766294a170fb9bc685c5ce0c17f64b40a0ea3a2604ac879f48de87eff2e59d1e64743c83711b2be746a45514d74f6597b29c897e720ea851cf386d11801242ec42061389c78eb0b933f669f69bfe9bd6e8d3154b4c7c11aa685ef622bc8f00000000000000000000007c98226f370fa3ced2a0f5f08b874e8629f4274cc8c79a744937993a5c5d4d6dd32491719f289fc3c91c50b0890cfd2597fb326f56c719d1870adf4397768ec93a24424c0902aa1555222dd1be9e09203f52db79bac1ed7c38d31e8462665283ba69d8f0612ef69e9c3ab9b2a2c69a35cc2930c231c6c69a6228b67b932a97dbcf755f399784a8cdfc386896bdac9252257f3c1371901a55a490f1ccd132e2cd900505f44fa6a7f41adc7acd507df5490fde33bf653bb87e7146f2ff3aa7c6d2a7e932b0377a96a8ca1dc0feafa1c111ff9a8843c8b8461da9b8032deb"], &(0x7f0000000340)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000000), 0x24f}, 0x48) bpf$BPF_PROG_TEST_RUN(0xa, &(0x7f0000000140)={r0, 0x1800000000000060, 0xe, 0x0, &(0x7f0000000280)="020e003f0000087e5bc5795e6558", 0x0, 0x100, 0xf2ffffff, 0x0, 0x0, 0x0, 0x0}, 0x48) bpf$BPF_GET_PROG_INFO(0xf, 0x0, 0x0) 23:56:35 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x4}, {}, {0x8}}}, 0x24}}, 0x0) [ 389.472945][T13795] BPF:Invalid magic [ 389.535959][T13795] BPF:Invalid magic 23:56:35 executing program 0: bpf$BPF_BTF_LOAD(0x12, &(0x7f0000000380)={&(0x7f0000000280)={{0xeb9f, 0x1, 0x0, 0x2f, 0x0, 0x0, 0x0, 0x2}}, &(0x7f00000002c0)=""/160, 0x1a, 0xa0, 0x1}, 0x20) [ 389.842834][T13804] ===================================================== [ 389.849802][T13804] BUG: KMSAN: uninit-value in erspan_xmit+0x21b9/0x3ea0 [ 389.851835][T13804] CPU: 1 PID: 13804 Comm: syz-executor.5 Not tainted 5.12.0-rc6-syzkaller #0 [ 389.862980][T13804] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 389.862980][T13804] Call Trace: [ 389.862980][T13804] dump_stack+0x24c/0x2e0 [ 389.862980][T13804] kmsan_report+0xfb/0x1e0 [ 389.862980][T13804] __msan_warning+0x5c/0xa0 [ 389.862980][T13804] erspan_xmit+0x21b9/0x3ea0 [ 389.862980][T13804] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 389.862980][T13804] ? validate_xmit_xfrm+0xd5/0x1b90 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? erspan_tunnel_init+0x470/0x470 [ 389.862980][T13804] xmit_one+0x2b6/0x760 [ 389.862980][T13804] dev_hard_start_xmit+0x196/0x420 [ 389.862980][T13804] sch_direct_xmit+0x57c/0x1a60 [ 389.862980][T13804] __qdisc_run+0x35b/0x490 [ 389.862980][T13804] __dev_queue_xmit+0x26ad/0x4600 [ 389.862980][T13804] dev_queue_xmit+0x4b/0x60 [ 389.862980][T13804] __bpf_redirect+0x1461/0x16b0 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] bpf_clone_redirect+0x4a1/0x660 [ 389.862980][T13804] ___bpf_prog_run+0x2b78/0xb950 [ 389.862980][T13804] ? __msan_metadata_ptr_for_store_1+0x13/0x20 [ 389.862980][T13804] ? bpf_csum_level+0x760/0x760 [ 389.862980][T13804] __bpf_prog_run512+0x12e/0x190 [ 389.862980][T13804] ? process_slab+0x13a0/0x1b70 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? __msan_get_context_state+0x9/0x20 [ 389.862980][T13804] ? memcg_slab_post_alloc_hook+0x41/0xe50 [ 389.862980][T13804] ? __msan_metadata_ptr_for_load_8+0x10/0x20 [ 389.862980][T13804] ? should_fail+0x72/0x9e0 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? __msan_poison_alloca+0x2e/0x110 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 389.862980][T13804] ? ktime_get+0x390/0x470 [ 389.862980][T13804] ? kmsan_get_metadata+0x4f/0x180 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? __bpf_prog_run480+0x190/0x190 [ 389.862980][T13804] bpf_test_run+0x53f/0xe60 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] bpf_prog_test_run_skb+0x1914/0x3500 [ 389.862980][T13804] ? __bpf_prog_test_run_raw_tp+0x3e0/0x3e0 [ 389.862980][T13804] __do_sys_bpf+0xbe6f/0x1aba0 [ 389.862980][T13804] ? ctx_sched_in+0x975/0x980 [ 389.862980][T13804] ? kmsan_internal_set_origin+0x85/0xc0 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_internal_check_memory+0xb5/0x520 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] ? kmsan_get_metadata+0x116/0x180 [ 389.862980][T13804] __se_sys_bpf+0x8e/0xa0 [ 389.862980][T13804] __ia32_sys_bpf+0x4a/0x70 [ 389.862980][T13804] __do_fast_syscall_32+0x127/0x180 [ 389.862980][T13804] do_fast_syscall_32+0x6a/0xc0 [ 389.862980][T13804] do_SYSENTER_32+0x73/0x90 [ 389.862980][T13804] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 389.862980][T13804] RIP: 0023:0xf7f5d549 [ 389.862980][T13804] Code: 03 74 c0 01 10 05 03 74 b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00 [ 389.862980][T13804] RSP: 002b:00000000f55575fc EFLAGS: 00000296 ORIG_RAX: 0000000000000165 [ 389.862980][T13804] RAX: ffffffffffffffda RBX: 000000000000000a RCX: 0000000020000140 [ 389.862980][T13804] RDX: 0000000000000048 RSI: 0000000000000000 RDI: 0000000000000000 [ 389.862980][T13804] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 389.862980][T13804] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 [ 389.862980][T13804] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 [ 389.862980][T13804] [ 389.862980][T13804] Uninit was created at: [ 389.862980][T13804] kmsan_internal_poison_shadow+0x5c/0xf0 [ 389.862980][T13804] kmsan_slab_alloc+0x8e/0xe0 [ 389.862980][T13804] __kmalloc_node_track_caller+0xa4f/0x1470 [ 389.862980][T13804] pskb_expand_head+0x25e/0x1e20 [ 389.862980][T13804] erspan_xmit+0xa04/0x3ea0 [ 389.862980][T13804] xmit_one+0x2b6/0x760 [ 389.862980][T13804] dev_hard_start_xmit+0x196/0x420 [ 389.862980][T13804] sch_direct_xmit+0x57c/0x1a60 [ 389.862980][T13804] __qdisc_run+0x35b/0x490 [ 389.862980][T13804] __dev_queue_xmit+0x26ad/0x4600 [ 389.862980][T13804] dev_queue_xmit+0x4b/0x60 [ 389.862980][T13804] __bpf_redirect+0x1461/0x16b0 [ 389.862980][T13804] bpf_clone_redirect+0x4a1/0x660 [ 389.862980][T13804] ___bpf_prog_run+0x2b78/0xb950 [ 389.862980][T13804] __bpf_prog_run512+0x12e/0x190 [ 389.862980][T13804] bpf_test_run+0x53f/0xe60 [ 389.862980][T13804] bpf_prog_test_run_skb+0x1914/0x3500 [ 389.862980][T13804] __do_sys_bpf+0xbe6f/0x1aba0 [ 389.862980][T13804] __se_sys_bpf+0x8e/0xa0 [ 389.862980][T13804] __ia32_sys_bpf+0x4a/0x70 [ 389.862980][T13804] __do_fast_syscall_32+0x127/0x180 [ 389.862980][T13804] do_fast_syscall_32+0x6a/0xc0 [ 389.862980][T13804] do_SYSENTER_32+0x73/0x90 [ 389.862980][T13804] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c 23:56:36 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4072, 0x588) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/76, 0x4c) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/29, 0x1d) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000080)=""/4096, 0x1000) [ 389.862980][T13804] ===================================================== [ 389.862980][T13804] Disabling lock debugging due to kernel taint [ 390.637183][T13806] ===================================================== [ 390.642223][T13806] BUG: KMSAN: uninit-value in erspan_xmit+0x21b9/0x3ea0 [ 390.650757][T13806] CPU: 0 PID: 13806 Comm: syz-executor.5 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 390.650757][T13806] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 390.650757][T13806] Call Trace: [ 390.650757][T13806] dump_stack+0x24c/0x2e0 [ 390.650757][T13806] kmsan_report+0xfb/0x1e0 [ 390.650757][T13806] __msan_warning+0x5c/0xa0 [ 390.650757][T13806] erspan_xmit+0x21b9/0x3ea0 [ 390.650757][T13806] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 390.650757][T13806] ? validate_xmit_xfrm+0xd5/0x1b90 [ 390.650757][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.650757][T13806] ? erspan_tunnel_init+0x470/0x470 [ 390.650757][T13806] xmit_one+0x2b6/0x760 [ 390.650757][T13806] dev_hard_start_xmit+0x196/0x420 [ 390.650757][T13806] sch_direct_xmit+0x57c/0x1a60 [ 390.650757][T13806] __qdisc_run+0x35b/0x490 [ 390.650757][T13806] __dev_queue_xmit+0x26ad/0x4600 [ 390.650757][T13806] dev_queue_xmit+0x4b/0x60 [ 390.650757][T13806] __bpf_redirect+0x1461/0x16b0 [ 390.650757][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.650757][T13806] bpf_clone_redirect+0x4a1/0x660 [ 390.650757][T13806] ___bpf_prog_run+0x2b78/0xb950 [ 390.650757][T13806] ? kmsan_get_shadow_origin_ptr+0x29/0xb0 [ 390.650757][T13806] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 390.650757][T13806] ? bpf_csum_level+0x760/0x760 [ 390.650757][T13806] __bpf_prog_run512+0x12e/0x190 [ 390.650757][T13806] ? process_slab+0x13a0/0x1b70 [ 390.650757][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.650757][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.650757][T13806] ? __msan_get_context_state+0x9/0x20 [ 390.801978][T13806] ? memcg_slab_post_alloc_hook+0x41/0xe50 [ 390.801978][T13806] ? __msan_metadata_ptr_for_load_8+0x10/0x20 [ 390.801978][T13806] ? should_fail+0x72/0x9e0 [ 390.801978][T13806] ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [ 390.801978][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.801978][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.801978][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.801978][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.801978][T13806] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 390.801978][T13806] ? ktime_get+0x390/0x470 [ 390.801978][T13806] ? kmsan_get_metadata+0x4f/0x180 [ 390.801978][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.801978][T13806] ? __bpf_prog_run480+0x190/0x190 [ 390.801978][T13806] bpf_test_run+0x53f/0xe60 [ 390.801978][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.801978][T13806] bpf_prog_test_run_skb+0x1914/0x3500 [ 390.801978][T13806] ? __bpf_prog_test_run_raw_tp+0x3e0/0x3e0 [ 390.801978][T13806] __do_sys_bpf+0xbe6f/0x1aba0 [ 390.801978][T13806] ? kmsan_internal_set_origin+0x85/0xc0 [ 390.801978][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.911137][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.911137][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.911137][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.911137][T13806] ? kmsan_internal_check_memory+0xb5/0x520 [ 390.911137][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.911137][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 390.911137][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.911137][T13806] ? kmsan_get_metadata+0x116/0x180 [ 390.911137][T13806] __se_sys_bpf+0x8e/0xa0 [ 390.911137][T13806] __ia32_sys_bpf+0x4a/0x70 [ 390.911137][T13806] __do_fast_syscall_32+0x127/0x180 [ 390.972026][T13806] do_fast_syscall_32+0x6a/0xc0 [ 390.972026][T13806] do_SYSENTER_32+0x73/0x90 [ 390.972026][T13806] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 390.972026][T13806] RIP: 0023:0xf7f5d549 [ 390.972026][T13806] Code: 03 74 c0 01 10 05 03 74 b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00 [ 390.972026][T13806] RSP: 002b:00000000f55365fc EFLAGS: 00000296 ORIG_RAX: 0000000000000165 [ 390.972026][T13806] RAX: ffffffffffffffda RBX: 000000000000000a RCX: 0000000020000140 [ 390.972026][T13806] RDX: 0000000000000048 RSI: 0000000000000000 RDI: 0000000000000000 [ 390.972026][T13806] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 390.972026][T13806] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 [ 390.972026][T13806] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 [ 390.972026][T13806] [ 391.062014][T13806] Uninit was created at: [ 391.062014][T13806] kmsan_internal_poison_shadow+0x5c/0xf0 [ 391.062014][T13806] kmsan_slab_alloc+0x8e/0xe0 [ 391.062014][T13806] __kmalloc_node_track_caller+0xa4f/0x1470 [ 391.062014][T13806] pskb_expand_head+0x25e/0x1e20 [ 391.062014][T13806] erspan_xmit+0xa04/0x3ea0 [ 391.092121][T13806] xmit_one+0x2b6/0x760 [ 391.092121][T13806] dev_hard_start_xmit+0x196/0x420 [ 391.092121][T13806] sch_direct_xmit+0x57c/0x1a60 [ 391.092121][T13806] __qdisc_run+0x35b/0x490 [ 391.092121][T13806] __dev_queue_xmit+0x26ad/0x4600 [ 391.092121][T13806] dev_queue_xmit+0x4b/0x60 [ 391.092121][T13806] __bpf_redirect+0x1461/0x16b0 [ 391.092121][T13806] bpf_clone_redirect+0x4a1/0x660 [ 391.092121][T13806] ___bpf_prog_run+0x2b78/0xb950 [ 391.092121][T13806] __bpf_prog_run512+0x12e/0x190 [ 391.092121][T13806] bpf_test_run+0x53f/0xe60 [ 391.092121][T13806] bpf_prog_test_run_skb+0x1914/0x3500 [ 391.092121][T13806] __do_sys_bpf+0xbe6f/0x1aba0 [ 391.092121][T13806] __se_sys_bpf+0x8e/0xa0 [ 391.092121][T13806] __ia32_sys_bpf+0x4a/0x70 [ 391.092121][T13806] __do_fast_syscall_32+0x127/0x180 [ 391.092121][T13806] do_fast_syscall_32+0x6a/0xc0 [ 391.092121][T13806] do_SYSENTER_32+0x73/0x90 [ 391.092121][T13806] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 391.092121][T13806] ===================================================== 23:56:37 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x5}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:37 executing program 2: r0 = openat$zero(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r1 = openat(0xffffffffffffffff, &(0x7f0000000040)='/proc/self/exe\x00', 0x0, 0x0) mmap(&(0x7f0000000000/0x800000)=nil, 0x800000, 0x2800004, 0x4000012, r1, 0x0) preadv(r0, &(0x7f00000001c0)=[{0x0}], 0x1, 0x0, 0x0) mmap(&(0x7f0000000000/0xb36000)=nil, 0xb36000, 0x1000007, 0x800000000009032, 0xffffffffffffffff, 0x0) mkdir(&(0x7f0000000000)='./file0\x00', 0x0) mount(0x0, &(0x7f0000000040)='./file0\x00', &(0x7f0000000080)='mqueue\x00', 0x0, 0x0) r2 = creat(&(0x7f0000000100)='./file0/bus\x00', 0x0) mq_notify(r2, &(0x7f00000000c0)={0x0, 0x0, 0x1, @thr={0x0, 0x0}}) [ 391.715598][T13806] ===================================================== [ 391.721908][T13806] BUG: KMSAN: uninit-value in erspan_xmit+0x21b9/0x3ea0 [ 391.721908][T13806] CPU: 0 PID: 13806 Comm: syz-executor.5 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 391.721908][T13806] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 391.721908][T13806] Call Trace: [ 391.721908][T13806] dump_stack+0x24c/0x2e0 [ 391.721908][T13806] kmsan_report+0xfb/0x1e0 [ 391.721908][T13806] __msan_warning+0x5c/0xa0 [ 391.721908][T13806] erspan_xmit+0x21b9/0x3ea0 [ 391.721908][T13806] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 391.721908][T13806] ? validate_xmit_xfrm+0xd5/0x1b90 [ 391.721908][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.721908][T13806] ? erspan_tunnel_init+0x470/0x470 [ 391.721908][T13806] xmit_one+0x2b6/0x760 [ 391.721908][T13806] dev_hard_start_xmit+0x196/0x420 [ 391.721908][T13806] sch_direct_xmit+0x57c/0x1a60 [ 391.721908][T13806] __qdisc_run+0x35b/0x490 [ 391.808998][T13806] __dev_queue_xmit+0x26ad/0x4600 [ 391.808998][T13806] dev_queue_xmit+0x4b/0x60 [ 391.808998][T13806] __bpf_redirect+0x1461/0x16b0 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] bpf_clone_redirect+0x4a1/0x660 [ 391.808998][T13806] ___bpf_prog_run+0x2b78/0xb950 [ 391.808998][T13806] ? bpf_csum_level+0x760/0x760 [ 391.808998][T13806] __bpf_prog_run512+0x12e/0x190 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 391.808998][T13806] ? __perf_event_task_sched_in+0xbc7/0xdb0 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] ? __msan_metadata_ptr_for_store_1+0x13/0x20 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 391.808998][T13806] ? ktime_get+0x390/0x470 [ 391.808998][T13806] ? kmsan_get_metadata+0x4f/0x180 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] ? __bpf_prog_run480+0x190/0x190 [ 391.808998][T13806] bpf_test_run+0x53f/0xe60 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] bpf_prog_test_run_skb+0x1914/0x3500 [ 391.808998][T13806] ? __bpf_prog_test_run_raw_tp+0x3e0/0x3e0 [ 391.808998][T13806] __do_sys_bpf+0xbe6f/0x1aba0 [ 391.808998][T13806] ? kmsan_internal_set_origin+0x85/0xc0 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_internal_check_memory+0xb5/0x520 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] ? kmsan_get_metadata+0x116/0x180 [ 391.808998][T13806] __se_sys_bpf+0x8e/0xa0 [ 391.808998][T13806] __ia32_sys_bpf+0x4a/0x70 [ 391.808998][T13806] __do_fast_syscall_32+0x127/0x180 [ 391.808998][T13806] do_fast_syscall_32+0x6a/0xc0 [ 391.808998][T13806] do_SYSENTER_32+0x73/0x90 [ 391.808998][T13806] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 391.808998][T13806] RIP: 0023:0xf7f5d549 [ 391.808998][T13806] Code: 03 74 c0 01 10 05 03 74 b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00 [ 391.808998][T13806] RSP: 002b:00000000f55365fc EFLAGS: 00000296 ORIG_RAX: 0000000000000165 [ 391.808998][T13806] RAX: ffffffffffffffda RBX: 000000000000000a RCX: 0000000020000140 [ 391.808998][T13806] RDX: 0000000000000048 RSI: 0000000000000000 RDI: 0000000000000000 [ 391.808998][T13806] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 391.808998][T13806] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 [ 391.808998][T13806] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 [ 391.808998][T13806] [ 391.808998][T13806] Uninit was created at: [ 391.808998][T13806] kmsan_internal_poison_shadow+0x5c/0xf0 [ 391.808998][T13806] kmsan_slab_alloc+0x8e/0xe0 [ 391.808998][T13806] __kmalloc_node_track_caller+0xa4f/0x1470 [ 391.808998][T13806] pskb_expand_head+0x25e/0x1e20 [ 391.808998][T13806] erspan_xmit+0xa04/0x3ea0 [ 391.808998][T13806] xmit_one+0x2b6/0x760 [ 391.808998][T13806] dev_hard_start_xmit+0x196/0x420 [ 391.808998][T13806] sch_direct_xmit+0x57c/0x1a60 [ 391.808998][T13806] __qdisc_run+0x35b/0x490 [ 391.808998][T13806] __dev_queue_xmit+0x26ad/0x4600 [ 391.808998][T13806] dev_queue_xmit+0x4b/0x60 [ 391.808998][T13806] __bpf_redirect+0x1461/0x16b0 [ 391.808998][T13806] bpf_clone_redirect+0x4a1/0x660 [ 391.808998][T13806] ___bpf_prog_run+0x2b78/0xb950 [ 391.808998][T13806] __bpf_prog_run512+0x12e/0x190 [ 391.808998][T13806] bpf_test_run+0x53f/0xe60 [ 391.808998][T13806] bpf_prog_test_run_skb+0x1914/0x3500 [ 391.808998][T13806] __do_sys_bpf+0xbe6f/0x1aba0 [ 391.808998][T13806] __se_sys_bpf+0x8e/0xa0 [ 391.808998][T13806] __ia32_sys_bpf+0x4a/0x70 [ 391.808998][T13806] __do_fast_syscall_32+0x127/0x180 [ 391.808998][T13806] do_fast_syscall_32+0x6a/0xc0 [ 391.808998][T13806] do_SYSENTER_32+0x73/0x90 [ 391.808998][T13806] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 391.808998][T13806] ===================================================== [ 392.448614][T13804] ===================================================== [ 392.451828][T13804] BUG: KMSAN: uninit-value in erspan_xmit+0x21b9/0x3ea0 [ 392.451828][T13804] CPU: 1 PID: 13804 Comm: syz-executor.5 Tainted: G B 5.12.0-rc6-syzkaller #0 [ 392.451828][T13804] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 [ 392.451828][T13804] Call Trace: [ 392.485195][T13804] dump_stack+0x24c/0x2e0 [ 392.485195][T13804] kmsan_report+0xfb/0x1e0 [ 392.485195][T13804] __msan_warning+0x5c/0xa0 [ 392.485195][T13804] erspan_xmit+0x21b9/0x3ea0 [ 392.485195][T13804] ? __msan_metadata_ptr_for_load_1+0x10/0x20 [ 392.485195][T13804] ? validate_xmit_xfrm+0xd5/0x1b90 [ 392.485195][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.485195][T13804] ? erspan_tunnel_init+0x470/0x470 [ 392.525018][T13804] xmit_one+0x2b6/0x760 [ 392.525018][T13804] dev_hard_start_xmit+0x196/0x420 [ 392.525018][T13804] sch_direct_xmit+0x57c/0x1a60 [ 392.525018][T13804] __qdisc_run+0x35b/0x490 [ 392.525018][T13804] __dev_queue_xmit+0x26ad/0x4600 [ 392.525018][T13804] dev_queue_xmit+0x4b/0x60 [ 392.525018][T13804] __bpf_redirect+0x1461/0x16b0 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] bpf_clone_redirect+0x4a1/0x660 [ 392.525018][T13804] ___bpf_prog_run+0x2b78/0xb950 [ 392.525018][T13804] ? bpf_csum_level+0x760/0x760 [ 392.525018][T13804] __bpf_prog_run512+0x12e/0x190 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 392.525018][T13804] ? __perf_event_task_sched_in+0xbc7/0xdb0 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] ? __msan_metadata_ptr_for_store_1+0x13/0x20 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] ? __msan_metadata_ptr_for_load_4+0x10/0x20 [ 392.525018][T13804] ? ktime_get+0x390/0x470 [ 392.525018][T13804] ? kmsan_get_metadata+0x4f/0x180 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] ? __bpf_prog_run480+0x190/0x190 [ 392.525018][T13804] bpf_test_run+0x53f/0xe60 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] bpf_prog_test_run_skb+0x1914/0x3500 [ 392.525018][T13804] ? __bpf_prog_test_run_raw_tp+0x3e0/0x3e0 [ 392.525018][T13804] __do_sys_bpf+0xbe6f/0x1aba0 [ 392.525018][T13804] ? ctx_sched_in+0x975/0x980 [ 392.525018][T13804] ? kmsan_internal_set_origin+0x85/0xc0 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_internal_check_memory+0xb5/0x520 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_shadow_origin_ptr+0x84/0xb0 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] ? kmsan_get_metadata+0x116/0x180 [ 392.525018][T13804] __se_sys_bpf+0x8e/0xa0 [ 392.525018][T13804] __ia32_sys_bpf+0x4a/0x70 [ 392.525018][T13804] __do_fast_syscall_32+0x127/0x180 [ 392.525018][T13804] do_fast_syscall_32+0x6a/0xc0 [ 392.525018][T13804] do_SYSENTER_32+0x73/0x90 [ 392.525018][T13804] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 392.525018][T13804] RIP: 0023:0xf7f5d549 [ 392.525018][T13804] Code: 03 74 c0 01 10 05 03 74 b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00 [ 392.525018][T13804] RSP: 002b:00000000f55575fc EFLAGS: 00000296 ORIG_RAX: 0000000000000165 [ 392.525018][T13804] RAX: ffffffffffffffda RBX: 000000000000000a RCX: 0000000020000140 [ 392.525018][T13804] RDX: 0000000000000048 RSI: 0000000000000000 RDI: 0000000000000000 [ 392.525018][T13804] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 392.525018][T13804] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 [ 392.525018][T13804] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 [ 392.525018][T13804] [ 392.525018][T13804] Uninit was created at: [ 392.525018][T13804] kmsan_internal_poison_shadow+0x5c/0xf0 [ 392.525018][T13804] kmsan_slab_alloc+0x8e/0xe0 [ 392.525018][T13804] __kmalloc_node_track_caller+0xa4f/0x1470 [ 392.525018][T13804] pskb_expand_head+0x25e/0x1e20 [ 392.525018][T13804] erspan_xmit+0xa04/0x3ea0 [ 392.525018][T13804] xmit_one+0x2b6/0x760 [ 392.525018][T13804] dev_hard_start_xmit+0x196/0x420 [ 392.525018][T13804] sch_direct_xmit+0x57c/0x1a60 [ 392.525018][T13804] __qdisc_run+0x35b/0x490 [ 392.525018][T13804] __dev_queue_xmit+0x26ad/0x4600 [ 392.525018][T13804] dev_queue_xmit+0x4b/0x60 [ 392.525018][T13804] __bpf_redirect+0x1461/0x16b0 [ 392.525018][T13804] bpf_clone_redirect+0x4a1/0x660 [ 392.525018][T13804] ___bpf_prog_run+0x2b78/0xb950 [ 392.525018][T13804] __bpf_prog_run512+0x12e/0x190 [ 392.525018][T13804] bpf_test_run+0x53f/0xe60 [ 392.525018][T13804] bpf_prog_test_run_skb+0x1914/0x3500 [ 392.525018][T13804] __do_sys_bpf+0xbe6f/0x1aba0 [ 392.525018][T13804] __se_sys_bpf+0x8e/0xa0 [ 392.525018][T13804] __ia32_sys_bpf+0x4a/0x70 [ 392.525018][T13804] __do_fast_syscall_32+0x127/0x180 [ 392.525018][T13804] do_fast_syscall_32+0x6a/0xc0 [ 392.525018][T13804] do_SYSENTER_32+0x73/0x90 [ 392.525018][T13804] entry_SYSENTER_compat_after_hwframe+0x4d/0x5c [ 392.525018][T13804] ===================================================== [ 393.233178][T13799] debugfs: Directory '13799-5' with parent 'kvm' already present! 23:56:39 executing program 5: bpf$PROG_LOAD(0x5, &(0x7f00000054c0)={0x2, 0x16, &(0x7f0000000200)=ANY=[@ANYBLOB="61128c000000000061138c0000000000bf2000000000000015000000080600402d0301000000000095000009000000006916000000000000bf67000000000000350600000fff07005606000002000000070300000ee60060bf05000000000000cf650000000000006507f9ff01000000070700004c0000061f75000000000000bf54000000000000070400000400f9ffad4301000000000095000001000000000500000000000000950000000000000032ed3c5be95a5db67754bb12fefffeff8ecf264e0f84f9f17d3c30e3c7bdd2d17f2f1754558f2278af6d71d79a5e12814cb1d8a5d4601d295c45a6a0b9bdb7dd3997e9d5c4f6f3be4b369289aa6812b8e007e733a9a4f16d469e1e19a006281ce2cbf3c3180a3e1282ee45a010fb94fe9de56c9d8a814261bdb94a05001d00c6c6e6f0ffffffffffffab8395fa64810b5b40d893ea8fe0185473d51b546cad3f1d5af65727546e7c955ccefa1f6ab689fde4de4e63ede20271a51445dc8da39e5b0ab70100010000000000d04ae76002d4519af619e3cca4d69e0dee5eb106774a8f3e6916dfec88158f0200000000c8fb735fd552bdc206004aeb0743eb2dc819b6cf5c8ac86d8a297dff0445a1dce431e56726a163f16fb2ad9bc1172ba7cbebe173aba210d739a018f9bbec63222d20cecac4d03723f1c932b3a626ce23240d2cd5697a993716dbf580469f0f53acbb40b401e37302cf4f8270b3159aafc7954f2af97787f696649a462e7ee4bcf8b07a10d6735154bec20000000000000000b8fc0000000000bc00f674629709e7e78f4ddc211bc3e9f0bd9d42ca019dd5d022cf74686e9fbe2562671cd47840a7afaab43176e65ec11119e18c176a70a766a689a6118a946dd1e827f3472f4445d253887a5ad103649afa17690884f800031e03a651bb96589a7eab04871bc47287cd31cc43ea0ffb567b40407d007341b46c5aff41b2c40000000000000000000000005f37d83f84e98a523d80bd0d0d703f37ca363f601ae899a53f6715a0a62a34b0c94cce6994521629ab028acfc1d926a0f6a5480a55c22fe394ac000000000000000000000000000000437d57defb79ea6a58bc3e00000080000000002f43b14ab24066170e10939c70932b49806b4237e46e800e5f0a7eb49d1863dabd276a6f30ad0409e8e680e04fe33953b6c3dc137f0b6213317325f60800000081040100000098764681423f5deebb9b3cf26d4cc0e1acaf2f84703e366c9b67135f2ba220fdb0456f7c704f96ec4d00000000000000007584802e90661ee5eebdf9865eeb8479d6664914f266c75bce4f9c97b3c19545362ff434b74802e8b1d9a00c2fbda0d638310b0000abad4b0703c3e54dd901cc2edbc8b4d6aea56d3e23fdff591422af297ec190a1cc41eaf5bc3e170d4a283300ae9306a65f7a5f6d6ec8c4584e666cd4fcd44e3e837c67998bc9936117d37bc7e4ae155b8300b635ea38ea618c5b2a0d1a1f67c9886362e62ef3da873cc9df7c589e8660b99e24653b20715395f301f7081aaae8f5160a64bff4cc2c62d4d25b2d3bbd6b05386e2c0695c74e5bead88a8155ea320405f690457f2ac3a30b1f502e5d88b9aef4123078694898960915b4077c5d3e044d97d90a36668485fa79336d9f5d3c2a29382e12df21931b19d3f2189861206b6beca5cf45b1eda9dc12052c6f5b8648613f173bb8d610b54448a0e4a31036d171d65647f4ee511eade6fc16ee1b122410549bb35e151adda5eb24faf8878932776162f32c1f3fa5535500000000d4a77800000000000000000000000000000000000000000000000000000000000a354186fcca5ff923bfdba70b70717c51fce1487833413ff2fd9a8d1b37fed0c46a549fcc677518a02b975758e6a02caac01fcec1db6d9639c48f10eb54cbea866f8c6b6f4ef6acf6cf"], &(0x7f0000000100)='GPL\x00'}, 0x48) perf_event_open(&(0x7f0000000780)={0x3, 0x80, 0x20, 0xc1, 0x70, 0x2, 0x0, 0xeb5, 0xa000, 0x8, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, 0xffff, 0x1, @perf_config_ext={0x3, 0x6}, 0x52, 0xfff, 0x200000, 0x2, 0x3, 0x1, 0x1ff, 0x0, 0x80000000, 0x0, 0x105a}, 0xffffffffffffffff, 0x8, 0xffffffffffffffff, 0x1) 23:56:39 executing program 0: bpf$BPF_BTF_LOAD(0x12, &(0x7f0000000380)={&(0x7f0000000280)={{0xeb9f, 0x1, 0x0, 0x18, 0x0, 0xc, 0xc, 0xa, [@fwd={0x7}]}, {0x0, [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0x5f]}}, &(0x7f00000002c0)=""/160, 0x2e, 0xa0, 0x1}, 0x20) 23:56:39 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x6}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:39 executing program 3: connect$inet(0xffffffffffffffff, &(0x7f0000001040)={0x2, 0x4e20, @multicast2}, 0x10) r0 = openat$mice(0xffffff9c, &(0x7f0000001100), 0x200) sendto$inet(r0, &(0x7f0000001140)="946ca9faf7df8dbbecb4256dfaf2f44b6c16c8ec67e26c8fa6d3721c164a15b2a06732c8a51977a11fe0e0fe4ce00e7bcc657392d9e22b2a25b48f5e347ad261872c2af403e2e815d3c96b8bb9", 0x4d, 0x24000000, &(0x7f00000011c0)={0x2, 0x4e23, @loopback}, 0x10) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) sendto$inet(0xffffffffffffffff, &(0x7f0000001080)="14298d51a1a95a2fa9b0863fda252c41b8ace6e0931980a03932becf0879ba28976b9607c7958caf136de814a618e1dcaa374cd3b5a5b94cd4687da7c222110aa7ba3d32720d7d318331a9f974d280a7d5ba1ca9c08e32a426a40578f87e4223cb57fa76b4e35e9249d5b7c63eeba83f390b9696195b651189d1562345", 0x7d, 0x20004801, 0x0, 0x0) keyctl$KEYCTL_CAPABILITIES(0x1f, 0xfffffffffffffffe, 0x0) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/60, 0x3c) 23:56:40 executing program 4: openat$ttyS3(0xffffff9c, &(0x7f0000000040), 0x1c5400, 0x0) 23:56:40 executing program 2: r0 = syz_open_dev$sg(&(0x7f0000000040), 0x0, 0x0) ioctl$SG_SCSI_RESET(r0, 0x2286, 0x816e000) r1 = socket$inet6_udp(0xa, 0x2, 0x0) setsockopt$IP6T_SO_SET_REPLACE(r1, 0x29, 0x40, &(0x7f0000000a00)=@raw={'raw\x00', 0x3c1, 0x3, 0x36c, 0x0, 0x59000000, 0x294, 0x1d0, 0x294, 0x2a4, 0x378, 0x378, 0x2a4, 0x378, 0x3, 0x0, {[{{@uncond, 0x0, 0x188, 0x1d0, 0x52020000, {}, [@common=@ipv6header={{0x24}}, @common=@unspec=@string={{0xc0}, {0x0, 0x0, 'bm\x00', "796268880ccc1ead08db3b000000af4f9b88574f7f1bf77d65420c28387d342331a24364f67cdd5531e34b768a1b8e5a06020a619a8153fb71779c857f8a000f42a2770770960409510115cbbdcf01572fb35d1e47674b41b6c4a3dfe224559d8763d5f9bc9fbae3ee50f987a1ab15581079624c1d69074c91660b783b95127a", 0x3d}}]}, @unspec=@CT0={0x48, 'CT\x00', 0x0, {0x0, 0x0, 0x0, 0x0, 'snmp\x00'}}}, {{@uncond, 0x0, 0xa4, 0xd4}, @common=@inet=@SET2={0x30}}], {{'\x00', 0x0, 0xa4, 0xc8}, {0x24}}}}, 0x3c8) 23:56:40 executing program 0: r0 = socket$nl_route(0x10, 0x3, 0x0) sendmsg$nl_route(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={&(0x7f0000000040)=ANY=[@ANYBLOB="140000005200a556"], 0x14}}, 0x0) 23:56:40 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000040)=""/5, 0x5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/9, 0x9) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000100)=""/85, 0x55) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000180)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000080)=""/74, 0x4a) 23:56:40 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x7}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:40 executing program 5: r0 = socket$inet6(0xa, 0x3, 0x6) connect$inet6(r0, &(0x7f00000000c0)={0xa, 0x0, 0x0, @ipv4={'\x00', '\xff\xff', @remote}}, 0x1c) [ 395.077570][T13869] xt_CT: You must specify a L4 protocol and not use inversions on it 23:56:41 executing program 3: r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f0000002140)={{'fd', 0x3d, r0}, 0x2c, {'rootmode', 0x3d, 0x4000}}) read$FUSE(r0, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0xfffffffffffffffd, 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r2 = fcntl$dupfd(r0, 0x0, r0) syz_fuse_handle_req(r2, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) getsockopt$inet_sctp6_SCTP_MAXSEG(0xffffffffffffffff, 0x84, 0xd, &(0x7f0000003b40)=@assoc_value={0x0, 0x80000001}, &(0x7f0000003b80)=0x8) getsockopt$inet_sctp_SCTP_GET_PEER_ADDR_INFO(0xffffffffffffffff, 0x84, 0xf, &(0x7f0000004000)={0x0, @in6={{0xa, 0x4e20, 0x7f, @local, 0x9}}, 0x38000000, 0x3, 0x1, 0x2, 0xcb}, &(0x7f00000040c0)=0x98) sendmmsg$inet_sctp(0xffffffffffffffff, &(0x7f00000041c0)=[{&(0x7f00000023c0)=@in6={0xa, 0x4e22, 0x2, @ipv4={'\x00', '\xff\xff', @local}, 0x3f}, 0x1c, &(0x7f0000002540)=[{&(0x7f0000002400)="e9701c7763cd6942541951543656d51adbdd17f78823f5e4bef33c3571982352b29f3c4c0646adc33b51240f013e41969585dd0b48e43b0c8908e26fb82349305c96d7f5bda3f1dbeea5d9b1335a6097c7e25221e7f7a365c13a4247386e9df66722371743d7aae92908164f1bddc678a7a3775ce426ce02f906373cf57d60ffd45eaf9e0bb4b608ba7d47fc032b2cb51ad6ba663f40b21e151d005c03bfee0b4c58ee69556b1f83fa10c8165fca14181ca80effa30ca722b8a47506bf941c6336098d9562e97325de5fa0e51af2a47c08", 0xd1}, {&(0x7f0000002500)}], 0x2, &(0x7f0000002580)=ANY=[@ANYBLOB="100000008400000007bec098ac141412"], 0x10}, {&(0x7f00000025c0)=@in={0x2, 0x4e24, @loopback}, 0x10, &(0x7f0000003b00)=[{&(0x7f0000002600)="d7266a4ceb6f3129701a6b73ad0fddef87572bbb7b9778e890815a8b6f1b85958878812903235c5aa8d88e1083085544f67002e5bb39eca9e5988964626b1acccb6112c127956b553870936cbd600f06d452566fdabe0d05562e2f6f1d5caf3ddf46a65431a3c7e4b38e564e609cfd12b977724d6d6c9c321db8a9", 0x7b}, {&(0x7f0000002680)="4455f72b87709fc55b7412c2a8b7aa79146a0566669d3565c7b2bd17afaaa3b072c94a7573063b7a7707f708519887138258796adc713cb7c1c9ea221c290d2dee7dcbc1b0bbd0d1f44d9befe38616d0756c704f40ef4d696438edf0eaa2aac69750dc468293170d540e7540de77e6653d9dda20801fb40984d9b55824e2f6d7877528bc1ac28b7f3e0e5877083ce1d932704c756ca3bffc8bd0a4492a37b25ee4885b59da0c35922044da64ec9cf8d287c451ca3767f560c6f457f72e898a0822352cfca603d78138a19acaf2ec4e2c7eebb53c7e8a25f5ffadaa52c1e8a313352ae1b269", 0xe5}, {&(0x7f0000002780)="b3f1c3496b64e0b67f02f07f83f25b77518a1f05b265509edd93a83f547d9651a8a8bb269b1952172e74b18e027c2d43b63762b79c59eb04daac31e7b888852c082d74f75af7e2124d68316dad8b4912246130001ea0b464d9faff1de239566285c3c2f05a591e8b8dee522a704ec78488fc081836df8941fd2b874609a62f8d1c824e0af046a66ab4a39d3434ebe9822dd7088509f5d6b07956ba832f7fc2c0b0a6915ace2aa18bf3ebac3249b02574f364ecb818ee57d37eaf79ca9bfd9d4e6f99052ec528173583df29f0948dd7efb6bde5c6d76c502b82b263ed3adc8019e791a34d6d3a3eb2db16818c662fae010e5d82b6b81c38c4a75511208869f9561e6fc815c56ef78103bd810d6de4e56fe744721ed4da80664c077b71a88616b7d2f962ae15366da5e2d304ab240fb783fa8d41458afe846ce4fad6c4502a119999efa7f6245abafb0baefe8857934692325e5ca3677853924f2cafd7c1df2e10f6d8ef864e7e3db1779372716b4fa6f395a37b6c8a4e3e63e08519d99b101322f89abfb0d0e0599eab0391eee43e0bf740da9afdb493f71833ff18113a6f65618925e0591e90095809f2c196f56b3684899bc9ae84db578f09bfac5ced198119c28e54d03e2ebfcc40eefeb9bae96701865c89efd06feeaf865f25ac84ab9b2bfd2cfec43dbdd18ec85cd3e40ceee604f29de9c8306412c62803d29b4ff2aeed1066d58bf299f56b35f3ca7dc347658427c3b8f24d78cddb0a5e165c19a37706b4c1a95fbaccad072a9ed2b2d99ee7dcac2af19137a03e90da0ed0abaefc91f02595573331d92a02589936544e751f1046434269dec76ef025ed6068d74e91fa83f6a7c708472fd3943fac32ca1d577f9b15dda2eb9f1c1a441fd2c6ef02a14e9b50c91785dc666cd792131c55c853ca5a5b525b0abbe5334bddeb4a77696b1324b4d1f4f597a64481656cc69c84828ac2ba25fefad2f5e3530810a4cf4bcebc474c8b2307a367e57e5bea1dabb59d0a15caa78aafc86fbdf8c734085fea778383d567793676d9a35223945a986d2ec80305b107b9136e4ae483df0263cfae96ab84f7b7f2d1f006b1d5351b4b7466a151fd1fed7a4a6c731aaebe667b6196d41e2cf27d1a64ae50bb334eabe9f0922ec4998880cc0af72fb98e8b0c8f5ab7ce6d50785ecc765219a65c9b37da5cfea04ea84b0f4f699dd1586ababfbd48cb3e7f0f5807d8d54971ada7facd4dbdbe783ef6147ba188ae7bda0fb155b9e0d42979fdc3f2d95944feee49cbf7d6a7859bdbdd9554150a484a67ae5663476762ecba015276b5c5b6f0e2496642ddbefb9d718058386c482af571303c2ea5cb947862b140747c37836d76c67a7bf3753f635fc3b915724506476a9735852dbfd896a5d47b786b09661bc089b519476ae1b75d1dd21c0d2d8f0da26a34cfcafdceb8eee35fd098c36c773da519d56e9a54383174327b934a61f9c55e322334cd8d2830a5cd5d1b3a17ac621967794fe2621d31a81cc2ed081334b0e0e0d256851c8f5ac35ec63e9d98c08c8c7298fa755faa6b5718a8c3de3c7a1d78f7ea2989490e0723333ea945d5d2c522e87e0623cdf3023701a680a6b153cfc4031471c4c3723ae856ce484e8fd819adc28bf3a0bc81536a8ffa9317e91f0dbff479f46797ab313310c62d3f0da1e49d02a5d86777a92ffc6b313e24b6dcde42b23e906eb87e94194760809b1bbe351d63064bfc4a2f8d3f542c149952c88c488c6a7e95c4dab329db3ff1d8b2deda7db48b4e818a32f2f7308534503db1f9abd32d82b37e056b2f12c7b4b37211720f31d1534c88907213e159a28ea6c0804e49e9203c579c84bd983a1ffa2fdf55af7bddd9d2d8a3f3d8307d268bf70f749622c763c766e5f299225339c7ac6658453b7840854d1f950cca18daade87d436b8fd668a80c0a2f630f0b7ab3e4ee4f5294435e902a9b0c2611ae8815b9f080838963df9cf8eb1ff4b51b0a2ef76c871e6fed0503f2880cc36922d9407e4967a4b951e5ab6f2ad1ccc95b70e531907ba8f6cfd5f208e6537c436030ca11650b9e5dc0eda4a5f7b88803440687956383d810fffb4ee7f775a895e9e92e17f6cee7721ce62025c42d51322d8558984012574062110331a0b8497ef0493a231a8c30e1fbf2b06e4434446ee64bea411ffb60eeb0eb7d51f086c4687f10dea9e342af3ed69ce8c4ea42b3885e9126fb1c86fbca3d5f5fa0b75f3ed20a8025429a778b35a99db1697d786e509b868ca7b8992ab06a31457ec403c4b52f81c9d44fd08c1405760f3d3b02f4dc63db462526235d41fd70bce03e7f61dfa255dcada94c8176c911ecb95b41d9842de8a0c21b0ae8fdd94541b929943cb7a2241e62a84d67f1c67221924c4b6a89a7c072010ad6d93db3c74456db82ea748c39ad5f4f0973931f581f010f0a87bbeca6059dd688f31c63e4ba97a82eb92e84ebb8da642887ec81c3bfc122dfcb77de38790730a3907266bca3a2792ebd4bc5456f78a5ff06d134caa9ae62d4c80fab3056db07b88fd6b9626a599e40a075ac0a01c71f62ad9e7e1fa3fce509ce24e91b2c9ddf00a5b58ad2e617522a97df9cf7e3ef8865136648d3233a54e03b7dc3e332041d172b16832b27e45b74a8f484ecc33ea1646c57321db04beaf3168c69e3f3da475e015d6751fea0b04fe44e7ff18107a6746d47613ac75865fb179cfe9d85bb0359c85f4f9be98fac337157aab9dfaf36b22caf61a0ac27abc2b68ff06ad084baed88df314bc041285916836355a8ef457666b0a55cd34f853e91f5ef401d9bafa29db6f2b082bb0d351b3544025ff61d5a1156fc00dca6b79ce4d539b2e22461839774f284b647cde548ee501eb6c36ed55ce158122cce7345f818bcab7700f34ef6d5a726d28f02df1729407641bce6a61550c35e0861112644e47c339f654bf873ac99cd079b728d9eb70e1832226bc773c19caaf8aa45a45dc465f58f2401dfa576774c04c4f29d5f2bc6fe064d914ef9270933996b18a0e28f3f6f2ee33a01521d42b06ea0d1ae5c959d488dd61cf69dd8fa5016e8e363d842dfa5ec9d8ea13eaaa7c1da7eb8a3cd221c24e01f338e8e71fc010567071b840ddd37609848606297e1a61f702b7078e611b93e1f5547018d554189fc431c35795eaa7ace12a3b76320623d11cee71d344acbedc7e8301867c8de69defce7ba481de4c47a000558eb9c3db9063af35387f957158a71c9745ee713170393386ef0aec220c099481310a99d6807505dba85526a0bc60966e1162ec628e29a899a04cf46141744dac378357ef5b090cb55c8cf340e048dd2e5f570588e297b3e057cf0871f63c5fb39d97e3f4c72d902f0220ad56d352408b1da4121fa6698bbad0a5b1dd90e052124b28a738d37acb8168f9941364e46e8a0d03de5ad54a99fd345b0c9e56dd6c1ac27abe06869137a43753ac3947403a107867ecbfc2e5ff32091054f29fd375fa5129c23e561dcb00f08f9a17601fcb5b795b491f1096441fde2c90493867e57a569df53e1394c286bb46adfb220437fea199ee8baa30de6831cd2d087f021b0906802b26e15116e3e6401fd94fb2c2cb4b98b486465c8f18344f1cadcd077faa8a6a9a8543f5ca9bbd14557b1653600f9b86d7cecee45e153a9c56f05ba68a71dd4c6b1813618b5bedf062f3c32725630bf791125ad4d74a08e7bb25970872547d77a26a05b0ec42c559ba64b8e3922dd92ecaa0ec0b8d11bacce81d561831ade580013b1fd45b0e5ed819cd9c0b41a72e81093d49f5ef09d93c339a68246b995399d44811fe24857e15de2eb50344a8349d2a38bad0d703fa96bcae79654a8187fd2828fefcbbe1ee7900c9cba4b3087ae46368efe02bf3f4f782785b0024ed2fa452331c3b8c0d69b2a57dbb07d1b2f9fb9f63cc59c256b4a5a567d40c1822a91db78677347db09a040b3efba7fb0228c6908197630957b1c9b6295dc5c8fc4965fabb890d641d795fd30e931177988fde732a4985c91221a7bc025c408ed641a1aaa8ebbd563169e74b337eeeb810ee5b22f8f7e1dd2fedcc3cba93c37ca41cdfd32175fa0a0fb99e6903ccb39fc832eeb912933947cb4da18bb67e5d74c33862f55b15e1e72566d17d948dfc765300c1e29f64b86e0b4b53395b41d9a7893a7660643646ab4b96cc8d13d34542bae05922c6dfc5de7c448697d45b14c6d2302881f1665b0fd934a7ed9ff0b9e058259a1cde827ab79c97a04691aa1db70e31122d36e3ab7184ed891af76cb98a21f0fe0f378db628b06866410c4b2722a42da802160503fe09aa50eefcb80e2c908a85cd7a7c766676d0eef69b0271a24c2bfaf4f69f526409e75be116392921424792751b41cd1d423a19991b66889bde26851c96cf1c1c7468dfa2de06943f3060202d54d9ca2597fe86efba4589e7bea11972145a0ec5c3600d958c7d669ec83cd156298e05124e4ec63c260b4c5e2a22dd73fd185dc504efa31c9219ee5d004a0031c43f740711c1cdd1d94b186e439f7bda05f0e0144bfbae470c72674cb370cb88bb391d90b42341e2142c55a9c03282c33887cc08a3c5fefb40b7ed4290010ad97dfce37ccaa61cb533a83267c5d836d52cb2ed791664b17dd2acfbc4d58f4a5f773cd2b54ac11123831bc842edcbd5461125a23ba6d64695061f8fcf573147e0ccf6ec07f890670f6851f29fa49db2aecc77286854ffd1b8c24fc58a1d308f53e4d6bb46690169d43c266e1640e6a9d59146ddda76f4ef875413483b85d9c5e8e8f08162c12a0e4786ea2eb6e85e17b6a489477abf9c09b5eb62309c0085319b19776366878d2626f3524662d82e378cef26f2128b9e21d4df4782e4ee08a607bd82e17ff6acaba578e298b49ea1f4b91d8195b560f91cf140b803294caec264c1e7ce0ff2083868eacfff1b699343fd0eb5431d5a528c55bed7bc1decbeeba56661cf87565551b5699e3cb08b030655ff5fe418e39c13b143201e956887bad639e510f8c469ae1cbfbc5474ff4befae85cde81e5c074e24f6c85e832336fe9c25e7042e703d7e1af02ad6620f7fc3494717f6c53c907df70012324ac53eaa9131473ec50005367352dff6d3bb3f6dc64790484023f21c5130e5b090074ee5d153477f9e32ed35ebc27b35ec693ddbdbfdecfe9b1d2218faff8506bf416e2b92232aefce4bae92a4c85d048cb7fb7a383a6beb6d4de36e4c601c7388aa6aa352debc34345c95374d3b57d3510b63154cc6c99f65d8d64f89ac1d11d924cedf4992d7a72da3f7e8d746da9fb1da6620e6bed0bd91700fadb4e6515ec7484af96d7b03c7916c109eb2510b35e640ba22e8bdc436c4770961e3cf47eb3cfa9b34ca85636705eaa16decfc5b9e6234e461c0c719f96cf472b0aa9f270917f5bad4aae7a35e9c31adf962515c722eb5b60a2713e1efb7f47f28bed2ed7d76630a5931363a84c16b5955b19f328a08230c03c7442eb04529b17319105e94dc52f58ed5031a45830135159f6d09389e6bec9507070573266479724c0b423a9d2db11e98c2d9f4e72b7421714cf224bb5d041ce8195b9344ce2d5754f49dd721cd475f5f1ef5a2547eb7b7aa62de22c47f44303499ac86bb293c1c8b608393692ac15c0e3d583c609fd71dc663dac3fa274c7583c2ea5266c9bdadc4397766a0470c013a5e2237451ea636a1072cb436f58fc7d8847d26533f9de56df9e3e013eef6c1d06baf343d7112aeead6680c89eeff44524c2b18c80ef7a2bea4ff84eb10f74923a89529f", 0x1000}, {&(0x7f0000003780)="b9b6a8e3262ab49a7e3602ab0a8eecdf3b83a1d7a5edda15b7098e379460d4624825d0f9df879695048812a53785d8f0a98e1bdd7f29fedd24dbc651784bed7de22d574d3942832a414a2eb38a19a5f6a1c67cb8c6bd55a88baee1b23f353d2847266e1b44a1ce0fa65b0c99f3187a97b21938f3cf9f9f7954e2f5810934a0490ba24fb6192512b1d96ef5745d6468b08f880237e3a136525937c193ab9986f27ef06a6700c9706ad49fb2bf34982a8d21d5b7a9a056852ee98aeb2b89e055c6276214e042eabb1443ba6498f8", 0xcd}, {&(0x7f0000003880)="296bd8aa55ea198d2a694c8a172e866db20c5dd34fb77043398aa0b051d03c09c5b07e8313148ce38d729f358cccfe7cee99934b15f4131de07f4662699fb22f1b1ecc9558aad94a722f737bc2cc97d8054c36ff3cb18f08a1934dfb7e04f7f29f3da484c9883be33e5abf8203e19cb7bf6f480200cd6f1ae9957a5c21bf76f726d59ee8cc95f0ced8bb7f1777a4f93b1bb68d9ea4211df81ac9cddc318727c91675fd458174466123090458b0a8add5b1a641d975ff5fdcee96cef9d4a54bd1db108c9c7b487e00010b134ea571", 0xce}, {&(0x7f0000003980)="5f1b8b1da26a86c2c98ff3faf331aab232131339dbdb5af6023e0131ecdb41a2f0f8025e719753af7e4420776bb5ca15714087fc175fb105331589dfe3ce0275574e04f24a2d1dd7c531b73caaef4f23bb469366fccc30270f0e66b94e421970035cbe2687dbe420bc17c5a128a6dbc08610fe4f86b427c3c2a3bab454031c408dea0f05b1a757d3ba01d8afbbabeeb8a38a373d2b1dad0f5b8791d28f2fe69f05bd6c22b87d80", 0xa7}, {&(0x7f0000003a40)="4b02f25cc7a10f6896b30f41", 0xc}, {&(0x7f0000008300)="0700000000000000b9c51380306e04db678aa5638335bebd8e328b7e36d502a840623c05ea70eee68dd914e75679c4606ed0daae6112a5f270ccddcd180a4aea35af3bde88995764cc83c00273dc83b7b5e8dfff73bf4a2fbe9d684a7257882318e148734af535a37bcf28381c78d0204e58b507ea82b5039c3119", 0x7b}], 0x8, &(0x7f0000003bc0)=ANY=[@ANYBLOB="1c000000840000000000000000000000000000000001140000008400000000000000d39f0100fcff070c2c000000840000000100000009006b0001a97dbcd5080000040000000800000009000000fcffff000000000000", @ANYRES32=r3, @ANYBLOB="1000000084000000060000002d7300001c000000840000000200000008000d020000000014a70000", @ANYRES32=0x0, @ANYBLOB="100000008400000006000000000000001400000084000000000000000300070025000500"], 0xac, 0x4048810}, {&(0x7f0000003c80)=@in6={0xa, 0x4e20, 0x7, @ipv4={'\x00', '\xff\xff', @initdev={0xac, 0x1e, 0x1, 0x0}}, 0x6}, 0x1c, &(0x7f0000003fc0)=[{&(0x7f0000003cc0)="728ec61932110905bcb948049d1b2a5bcfce4b7bca4735426285840e16c2bc03666c64bf027fad564f0132edce65cfccfb690e8cb95c4cdac68234349cb45ac601d9d982049ed4f2a0e990d2fa01a3a22b0fcb44344a4ce4a30a3bbda703acd40fb05f50e48b53d0826c4fa053a15b2139315da30edbff2eda257e54e72a0a6eacff6444b32d5e0d5bc1043f7e", 0x8d}, {&(0x7f0000003d80)="47bda02bf7b13b7fdb409884d61c2b8a283c1697f2d881c4f6854b1941a9ded6bbde96664516c426a42809f8f3ddaf585c93bcc60a6dd6c1bedc30d17033aa043feff1e525558aa5bde2e336398b69c317459f5d9f5006e4032cf42c0c2cf9f501c79632efe1760e9619", 0x6a}, {&(0x7f0000003e00)="ff8ef0e2880349b1f5baa57942e1682f438394cf75e33a014c267e92ec6817bd632eab8b3ed326e254ed98c59844419c484e3b393b6e0dbf64bcb241c0f0195cab33e8d64653433bf43ad5731de601b85cb6cea385918f6b4ae39514cfe8c230c0e1a315eb59fb02d2b397", 0x6b}, {&(0x7f0000003e80)="5fd5894b1f1f05e502ccb3b48becfa3d6feeab56620cbbe7603f40f4acb169805938aecc085a98350944018275c21d2f6967d709723480de9cd26a9f841338cb101209c15427af90aef0cf29446164c4d93b8707b53c5cae70348816a803081731a4f0f25b0d2203c9adac13ceb08d1a0538c31bb69f38d11940c162c7c9ea6afb6f79858801ea06bfa1b8573b0d612709a3e6", 0x93}, {&(0x7f0000003f40)="58ff463dc74385a78bafb7183c803d8ced7bab7e4a0dbb15c4a316c3acce4bc1f2f77e105306ec213b3ce37ccfd31b772edb4b7d0cac2ad54f1a39fd672c69c211a3bfb13ecbefaacb6d828593113be31fecfdfbed11b515cce493d03cea295c6a9ec3a074", 0x65}], 0x5, &(0x7f0000004100)=[@dstaddrv6={0x1c, 0x84, 0x8, @initdev={0xfe, 0x88, '\x00', 0x1, 0x0}}, @dstaddrv4={0x10, 0x84, 0x7, @initdev={0xac, 0x1e, 0x1, 0x0}}, @sndrcv={0x2c, 0x84, 0x1, {0x1, 0x80, 0x0, 0xfd, 0x7fffffff, 0x3, 0x80000001, 0x80}}, @dstaddrv6={0x1c, 0x84, 0x8, @rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02'}, @sndinfo={0x1c, 0x84, 0x2, {0x0, 0x8001, 0x5, 0xffffffff, r4}}, @dstaddrv6={0x1c, 0x84, 0x8, @rand_addr=' \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02'}], 0xac}], 0x3, 0x0) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002080)=""/204, 0xcc) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/10, 0xa) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000022c0)=""/76, 0x4c) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001080)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002240)=""/87, 0x57) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/4, 0x4) write$FUSE_NOTIFY_POLL(r2, &(0x7f00000082c0)={0x18, 0x1, 0x0, {0xa554}}, 0x18) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002340)=""/89, 0x59) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000002180)=""/147, 0x93) 23:56:41 executing program 5: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = socket$netlink(0x10, 0x3, 0x10) sendmsg$DEVLINK_CMD_SB_OCC_SNAPSHOT(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000080)={0x0, 0x60}}, 0x0) setsockopt$netlink_NETLINK_ADD_MEMBERSHIP(r0, 0x10e, 0x1, &(0x7f0000000040)=0xb, 0x4) sendmsg$NFNL_MSG_CTHELPER_DEL(r1, &(0x7f00000003c0)={&(0x7f0000000100)={0x10, 0x0, 0x0, 0x400}, 0xc, &(0x7f0000000140)={&(0x7f0000000300)={0x14, 0x2, 0x9, 0x101}, 0x14}}, 0x0) 23:56:41 executing program 0: sendmsg$NET_DM_CMD_START(0xffffffffffffffff, 0x0, 0x0) syz_genetlink_get_family_id$net_dm(&(0x7f0000000100), 0xffffffffffffffff) r0 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$net_dm(&(0x7f0000000180), 0xffffffffffffffff) sendmsg$NET_DM_CMD_STOP(r0, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000200)={0x0}}, 0x0) syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) 23:56:41 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x8}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:41 executing program 2: msgrcv(0x0, &(0x7f0000000180)={0x0, ""/235}, 0xf3, 0x2, 0x0) msgsnd(0x0, &(0x7f0000000540)={0x3}, 0x8, 0x0) 23:56:41 executing program 4: r0 = socket$nl_generic(0x10, 0x3, 0x10) ioctl$ifreq_SIOCGIFINDEX_batadv_hard(r0, 0x8933, &(0x7f0000000400)={'batadv_slave_1\x00'}) 23:56:41 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/206, 0xce) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001100)=""/251, 0xfb) 23:56:42 executing program 0: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$netlink(r0, &(0x7f0000005100)={0x0, 0x0, &(0x7f0000005080)=[{&(0x7f0000005180)={0xec4, 0x0, 0x0, 0x0, 0x0, "", [@typed={0x4}, @typed={0xc1, 0x0, 0x0, 0x0, @binary="6948f038f6eb7c8b1a5570f61e8b846ac3d928b7c266f4644bdf1155d3b4d051d9f8c65f2bf4388ec6c36083bcf0c1b727c23ebfdb864492251e919029658a49dd35d569307ea786d107f17755defcdc1f8390bf30437b3cd3a894171a379676a6f156dc84147f07fa7c6ee1f595bbb32786669df6bd2bce2b1f88c5f6906d5c56a4c73ea7996136270080283bf69bf20fba19b1b2ea67224abcf10c1a41e5c4771541564550aafa06c3770edb67ddfc0885d636b7efd4109d6965b2d1"}, @typed={0x8, 0x0, 0x0, 0x0, @uid=0xee00}, @nested={0x4}, @nested={0x341, 0x0, 0x0, 0x1, [@generic="c5d18bce88dfcac28a6441ebeefa1dffd03267b91939d8ebc7b7290d9a6664c24412df5c0c991cf669c1344c5cec6c0b07fe729a2bffe94a134da666036ef5870bc95c99e4334ed9e0cbe0971526efbc0771a618b7c5e0e073a4c436af5dcd0398", @generic="0754dcf7f8", @generic="f723036c3958344f870605094bfc169be407c7b76081c3e38b6772e003e3dc9cd8dc4361c3a1926c23fe4a94fd139d26c077ba2a325ad8e58d1623e8d34e91be36d83c1e3447", @generic="717996fc184bcd6640017c664733b19e5fc0d7ce7d7c5e5d833ad4bfc1d6b53e157e965be519a9833bf541e2d0fb3ee02c03091ff039199295ebd7236cc5102ef787f7ace0a95cccbf2535d9eada708ea573c5f893985b1255a6926e4d64cd81669de8898d7cceb9e39029a876f6245bb0786ccbc778059a0febc15ce4d9f077009153f8d9199827ed80bbb625fdc2351a273523a9fd5725bdd867abc90e0c413a0adc1d011839fcb5b14c85d4b034fc205e5917cc92fb10f7d2ee26e35c7493cd55553645b3a4fc3050d3fa20d8bcf6fca351609979", @generic="78bcafe098d9e0349f43cedfd8d0e7895eb68e66ee1976fe4d83db0bfe6e60d50a85e3bb648c3192d0a53ee9b89c332870646bdbcd623b1c7e7357c5c482f15cd2a5ae26df5bba4caa3f67cfac49d37c5e97e9d4827c21cbb70e7832dd1e411bb8a58748d78fdc909d6b82f13f8b7b9567ae937556624d71b766b41949eb2f379d02fed929a7ffee243e6b60f55d2c9d232e713810ee31c2528be3a68d4c00219daa638062bedb", @typed={0x8, 0x0, 0x0, 0x0, @fd}, @typed={0x8, 0x0, 0x0, 0x0, @uid=0xee00}, @generic="bce7bf53e16772e2f047ee4e04b058ad70fc501088f662807a5ebf42eadf8fdc030c491b5103518e652088083a39a3f9cee9c1b0e0bdd061969510feb583a179be3c74435ec715c509ffc72555750a5aad80da77033bcc76df098a10d4512c21d42eea6a3a2ba259be1bf451559cbd502592d2d9da7dec36fcd7c25f3ee042bb325680779836bc36cd312e03d6c799ee79384a3e5122c67c56660df70c8b6d3bda8d9145279b26e17af87a37063118864d321e041c3355457a5ef4f3b60b7478ff94b2281a2ce31213bdf6c28ad61bed5443e8fb51c0f1882caa611867fee8d582d1a417e701fbef439aab939f93a848", @typed={0x14, 0x0, 0x0, 0x0, @ipv6=@private1}]}, @typed={0x14, 0x0, 0x0, 0x0, @ipv6=@local}, @generic="9ceac852ee9cd3884b11ce4397c4b1b8b1e504bb82d679f1a0571318d5f0e87dc0cf3bbf3c10ecd9c20ddab39aa1e082f686fe19eef9e7a701ed013bcddb99a1e52ff741c866969264ff515deb02e4a524fdd1985ea6fca28bfdb509b369746328a6d76ce7d33bbf0ae7d56360a1f9eef2573071200625a7e79dfa3758f5e1208bd9e30a8ae7b863982421aab8d126247569e5554d85a15e7d91c0ff1f1b369c0b2f45a482ad004e94cda0516f0f7ca5300634d559b27e5c4e3cff95df59754742a76127978f2c8b0ce36bb8016d50a29897f6e7d28656ef9a26c38ed85f060a1fca9b912c8a9161b8543410b636ff7031fa800b7fc41e32266b46d73093cdca05bba459db7675143492069761110738c8d1092a60b19fdd247ff11fdaeba4a97156a537e9569c81a51f56fac902219d810a01c68743d1b2cc7ef599077c085365e6ceec68f2a9405472ea514c55d1fc21608eb784b346256f680b9a793d063634891d5aa098e09f9b5ae776ba942744c4bf3ce76a9d56dd39c82449a6bf690eb4fc57f796757b3002951dd5af5c31ad976be26e1b5f39e5856d530b15f2fdc87e3485d9a7a3225eaea32492d9fa9822d307060804c18d430ac62421c8074538dbfd3862d8307a184ac8744ad3307c3cc4980d6f1fa41a99c7e671fcfe29087683138f701ed8b86f76e759e193f5935c509a289085e29606dab7e9e638d163e38245b876ce0a9b3a207bae2ed28153bf533165067142755eeab663aaaf481302280b6bb4beff444726ab6c6ca499b1e80d05c8c8a633a8d5df1f62d9d3d601f700ab338f0d9bf5d1e08fe7262cd7bc07af1b5893fd83af681134c004e378956de7e9b37d53573b91373daba25e2af5b71b38459f301a8a80f7af72bd67a312e714ff7f78f7577719ea137cbeea87415f95b21545f17e1c7c1e04d0eab048fd16dd8eadabd5b1f19de4d7ca3e0efa9721c64fcce37fa345ae5c64add8fb4d5dc1c9aa74eedb4081982adf2984c2c1f638900b6e5868fed761b545ffcd3fb4500815a7a29856d707b2bde89129ce244e7ee06969ddf6bf36350136e678fcca929e8b963fab3e86312ad37b0858f6b57693e9b71b12294c66ea761f118d8848c99566b559fd959ece8142556f6517ffeaac991ef23e3b15efde6eea3a45ccaba4d1b3a897f55337956029142f190fd34733f280b7b2542cce1b3c266617b9f9a2c1c35375340a7298e3fa18cc2116eab05d3ff013132ef2355f11285c858e03d4670ec1702ef6cc9b2f9f4eaa3cc0894093f115c607bcc8094398e0ac843af3daa646649f7e389abe71ee08551c4082451e776c45315e1bd66105ef71437b1430cbabe3a96d7c5f43e10844db676c239221800592de8b321dba614f29cf432bd0aa34e70305cee42edaf7d31baf297162e873f815bef790bc8d1f10f4a61bccedccb265421080191ee5d925c8bf7394ec65a6929e436dccca3bf1f79cd05f3cee52912119f342a365b0b2eb6ae4be05848d2d742478a1af389568b3526d8e20756ebf298e1116f38466c6c7cbcd3b5f07f46bdb391cd7e93d701812fb67ea73b6ca78aaf785bcf067ee96eb5539990db9f5f32959e77680d182995dc37b6a29ecd868aba4d212723a5c0a7e95011e3febe16cd78a16629ea17b4f01277d13c180403e25a5d3a2b199ead37f06d85bf7fb89c29ef89c02e703d0a6af0c3995d5ef2c072ae9998899ad0e9eb192d06e71cc4c04f083d98806df3b907a02430b7e0aa621007e8935024b08cddd0e1456858b655c4a2cf483ea604cdfc8becbf82687407620a3eb6fe92da064ea4f02a1b3edb31b7f49c2b4c6c77a4a86fec40dd155b6101a807983ee64f51b1a7c5f9255757e5e007a82f11a051bf6b2b8aa990f0d9935d00c7b4fa962f57ef9dc2092dd9f55d7290685d04d29869cad40c897cdfe938baa8777a2091411eb206bf21d61069f8194bd21d223dade0ea778de8162a320aa4c26ee85440114d709c3da7b55d586f75be9dfe70251a94644c361acc3109f8a03ccdd4ef8ffcb907e1b37515af472c1f5d7f90070ccd6113997c0d2fdb9bfdc37d2020e9acafde973d1222346322f1d1b3d178cbef9be36fb3620d343d8da0e751f79a523367f893ab7c2cc4b12fcbce7073a523f46e3e87a624908302cd1cafbc8658f425c4f5434e5fe4d3d44ffacbc520106464a3390d62eca16d17f9997c5ecc522f8a7cfbe25ee6ae7a0f3d6bba2f90baba1a9c54445eac08b6200a9666205486620f5fdee1162e21bfcf781924b8e030b0c36820673a0f8ec7faa52bb1a39879fee3302ab656db45d8433a52529edf4436c45060888f1ca2f0bb498c19b87ffc537d48dc9788c37e306f0d094cfc4c79ebdda6ac7297652fbf0c395af856cffd36b6818711112fec1b3b77c7ac320a4c78c6817de8ce606aa07246d1db97b94e9675f63c1677330cd8bf3ace8361e4982e01c645bacee3b4c101f9bdac1ed508ac61a043ccbfd5560bf2445b1988b8118479f8581b0b8ca834c8c512161bba9ebec2a1963ef53bd4004b9ee70c297ca4c921303fe616e7ad33d6a4c299555db9ab354e9e422a69d3ce21e83891b9f74cb0233384ac068f9e9f24614d63a2c2f0df7aa77a35259414517c85cf392578933c76dd4c5acdd5a08a33c6ea23536feec39ac9b6d567541abda33c6d104ddee4e67697d88aa2a7a85b33a43bfa5a371e3a761602085e88420a48a12983c1d791acb52ca4082222646f1a025a1a04b147101b35963a44a092f9a469bbeb60b3d4dfcf105c5b1daaaccbf464326023ac3addc9d5338497e0368b1a7a601dadb4db7c4456d0b3a45f59370ab9ef90e25a48e84f4f46d1f876a91219616f7c3a1d453dc706049002da918715eaf497e75da79171230039ce8092578bf4e47f85bbb1ab8c23b53faaf25bbf9c3962643c5a6651690fc76cf8491c0066d876766ade19993728ae51b427ae014bd2cf8a89545980281bd7302833545fcee02fcde747e6e54da93f1059b627272e89358bcf7e6cb9016c209abab2b984da2e92af4363d44376d3d719b208c132a74cb8bbecaffe6f63728a37714111a7989f6e6b9b04f138c6da6a60b4573e7204df0759d84849a0fc841dca3653e233e73327130a45720a783bacc039c3789daec02b6f83eab2c80fe9d6a3266372fff646b6c14f67d30f3e2a6dc2913ad0f1c49694189daa0858b520fe6987128fb83413f6dbdd6c36269eebc1de471825a55b6469c64c37440bbf5e1725bffee5dd0edd97369223d66e12ff0bceaa292114ae6dd08c28d4423791c84a3c62b7db1aea6abcc458d4887817aeca8650bd0a2dfa2474955b738a8b397ae56e271a339055a6fc5842aad8c3887026e2bcd0782d24d0f64b787606b996d3e8244c3db662c615955f0874479df93142377257f690399cb7f80d0d1f19820525f17385c6f31aefde62a3396011a2e82e90b70fe04618d603012e8be46bd0311f8ff4c8b8aaf7d4183cc26b74b07e38eeeb9fd6de160ac1567a72e9091cd42f01042454812bca0be0793e68d1295fd874794adebea694324110f85d9259153032bc4ae3451992fe1a55f03f46bd756929209bfb7199ca9e3e0b9d247c415c2526068eda01da1f175fda7a1107132c1ba924c06cbaea31413dbae2cd0190335673a3aed0a43b9f0e8b7e310450969e727bee8bcbeee5c4c9fb9f1e91bcc7b75e70b2fcf9df139f69a0bea290a151814e1af838b8a1498b4a3ed3b5ea4c59f688b9e5635f27f41219408bf73a2182ed5c138326a7fd529c2879c1b97ec5a"]}, 0xec4}], 0x1}, 0x0) 23:56:42 executing program 5: shmget$private(0x0, 0x3000, 0x0, &(0x7f0000001000/0x3000)=nil) 23:56:42 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x9}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:42 executing program 2: mkdirat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000000)='./cgroup/syz0\x00', 0x1ff) r0 = openat$cgroup_root(0xffffffffffffff9c, &(0x7f0000000000), 0x200002, 0x0) bpf$BPF_PROG_QUERY(0x10, &(0x7f0000000280)={r0, 0x0, 0x0, 0x0, 0x0}, 0x20) 23:56:42 executing program 4: r0 = socket$nl_netfilter(0x10, 0x3, 0xc) sendmsg$IPCTNL_MSG_CT_GET(r0, &(0x7f0000000500)={0x0, 0x0, &(0x7f00000004c0)={&(0x7f0000000300)={0x1c, 0x1, 0x1, 0x201, 0x0, 0x0, {0x2}, [@CTA_MARK_MASK={0x8}]}, 0x1c}}, 0x0) 23:56:42 executing program 0: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000380)={0x18, 0x3, &(0x7f00000001c0)=@framed, &(0x7f0000000200)='GPL\x00', 0x1, 0x98, &(0x7f0000000240)=""/152, 0x0, 0x12, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f0000000300), 0x8, 0x10, 0x0}, 0x78) 23:56:42 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001040)=""/11, 0xffffffffffffff8f) 23:56:42 executing program 2: bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000002340)={0x11, 0x2, &(0x7f0000002180)=@raw=[@call={0x85, 0x0, 0x0, 0xa5}, @func], &(0x7f0000002200)='syzkaller\x00', 0x7, 0x7a, &(0x7f0000002240)=""/122, 0x41100, 0xc, '\x00', 0x0, 0x0, 0xffffffffffffffff, 0x8, &(0x7f00000022c0)={0x5, 0x1}, 0x8, 0x10, &(0x7f0000002300)={0x4, 0xf, 0x1, 0x8}, 0x10}, 0x78) 23:56:42 executing program 5: r0 = socket(0x11, 0xa, 0x0) sendmmsg$alg(r0, &(0x7f0000000140)=[{0x0, 0x0, 0x0, 0x0, &(0x7f0000000280)=[@assoc={0x18}, @assoc={0x18}], 0x30}], 0x1, 0x0) 23:56:42 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0xf}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:42 executing program 4: socket(0x25, 0x3, 0x0) 23:56:43 executing program 0: rt_sigaction(0x3c, &(0x7f0000000100)={&(0x7f0000000080)="400f18f166430f38339d34f849756666420f3a22ca00c4a23d97dac4227d22530042f61d0080097fc4c14d73d2d9c4621100b1c5367fc8f3a5c4812e10f6", 0x0, 0x0}, 0x0, 0x8, &(0x7f0000000140)) 23:56:43 executing program 2: bpf$BPF_TASK_FD_QUERY(0x1e, 0x0, 0x0) 23:56:43 executing program 5: r0 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) syz_genetlink_get_family_id$nl802154(&(0x7f0000000700), 0xffffffffffffffff) ioctl$sock_SIOCGIFINDEX_802154(r0, 0x8933, &(0x7f0000000a00)={'wpan4\x00'}) 23:56:43 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x60}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:43 executing program 3: r0 = socket(0x1f, 0x2, 0x8) getsockopt$sock_cred(r0, 0x1, 0x11, &(0x7f0000caaffb)={0x0, 0x0, 0x0}, &(0x7f0000cab000)=0xc) setgid(r1) mount$9p_tcp(&(0x7f0000000000), &(0x7f0000000040)='./file0\x00', &(0x7f0000000080), 0x90070, &(0x7f00000000c0)=ANY=[@ANYRESOCT]) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) 23:56:43 executing program 4: syz_genetlink_get_family_id$ipvs(&(0x7f0000000040), 0xffffffffffffffff) 23:56:43 executing program 0: clone3(&(0x7f0000000d40)={0x0, 0x0, 0x0, 0x0, {0x34}, &(0x7f0000000b80)=""/150, 0x96, 0x0, &(0x7f0000000d00)=[0xffffffffffffffff, 0x0, 0xffffffffffffffff], 0x3}, 0x58) 23:56:44 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001440)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000080)=""/231, 0xe7) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001400)=""/1, 0x1) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000280)=""/211, 0xd3) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/64, 0x40) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000040)=""/36, 0x24) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000480)=""/253, 0xfd) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000380)=""/234, 0xea) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000180)=""/172, 0xac) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000580)=""/173, 0xad) 23:56:44 executing program 2: pipe(&(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) fsconfig$FSCONFIG_SET_FD(r0, 0x5, &(0x7f0000000100)='\x00', 0x0, r0) 23:56:44 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0xb7}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:44 executing program 4: syz_open_procfs(0xffffffffffffffff, 0x0) pipe(&(0x7f0000000640)) 23:56:44 executing program 5: syz_genetlink_get_family_id$nl802154(0x0, 0xffffffffffffffff) syz_genetlink_get_family_id$nl802154(&(0x7f0000000540), 0xffffffffffffffff) 23:56:44 executing program 2: bpf$BPF_TASK_FD_QUERY(0x13, 0x0, 0x0) 23:56:44 executing program 3: keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a0c0)=""/4125, 0x101d) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000200)=""/102373, 0x18fe5) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f00000192c0)=""/218, 0xda) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000019200)=""/105, 0x69) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000019280)=""/56, 0x38) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a040)=""/71, 0x47) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000100)=""/200, 0xc8) 23:56:44 executing program 4: syz_open_procfs(0xffffffffffffffff, &(0x7f0000000000)='net/ptype\x00') pipe(&(0x7f0000000640)) 23:56:44 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x300}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:45 executing program 5: r0 = socket$can_bcm(0x1d, 0x2, 0x2) ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(r0, 0x8933, &(0x7f0000000200)) 23:56:45 executing program 0: bpf$BPF_PROG_WITH_BTFID_LOAD(0x5, &(0x7f0000001700)=@bpf_lsm={0x1d, 0x0, 0x0, &(0x7f0000000000)='syzkaller\x00', 0x0, 0x0, 0x0, 0x0, 0x0, '\x00', 0x0, 0x1b, 0xffffffffffffffff, 0x8, 0x0, 0x0, 0x10, 0x0, 0x0, 0xffffffffffffffff}, 0x78) 23:56:45 executing program 2: socketpair$nbd(0x1, 0x1, 0x0, &(0x7f00000000c0)={0xffffffffffffffff, 0xffffffffffffffff}) sendmmsg(r0, &(0x7f00000083c0)=[{{0x0, 0x0, 0x0, 0x0, &(0x7f0000000580)=[{0x18, 0x0, 0x0, "a2ec"}], 0xf}}], 0x1, 0x0) 23:56:45 executing program 3: r0 = openat$fuse(0xffffffffffffff9c, &(0x7f0000002080), 0x42, 0x0) mount$fuse(0x0, &(0x7f00000020c0)='./file0\x00', &(0x7f0000002100), 0x0, &(0x7f000001b200)=ANY=[@ANYBLOB='fd=', @ANYRESHEX=r0, @ANYBLOB="2c726f6f3030303030303030303030303034303030302c757365725f69643d000000000000000000000006db3c68d8e448faf6cb7af3a4e41814057419e42296002f2c60757770507a84a4da60e654f3f585f6563d189998dfe1c97ebc3e83872c7c8d6b8cc64c37cf34c44c858745407ae186f4604e53462fe5052a3ed65f2df12f3ccb6d61430407af2a04814a74b7e237ae20c9b281e5e1045db50e1e1c2236520861e008cf725ed0389897cc7d058100eb8a3de1ffe0dd17294f5c59", @ANYRESDEC=0x0, @ANYBLOB=',group_id=', @ANYRESDEC=0x0, @ANYBLOB=',\x00']) read$FUSE(r0, &(0x7f0000006280)={0x2020, 0x0, 0x0}, 0x2020) write$FUSE_INIT(r0, &(0x7f0000004200)={0x50, 0x0, r1, {0x7, 0x1f}}, 0x50) syz_fuse_handle_req(r0, &(0x7f0000004280)="a062030607792c01386f28a428828947de99f79cc542703d923c7cb9d4e1f6fd95fbf2f747ab32f6fb041861fb3f87a88cb85405b4e73c0b6b12c81e42a9f13d82c32b7ddb172bcba1aac5c38f083747ac179f08d4d6d342a87ba8dd9bb7a9680f27433c3357b4f6ac97b19a973592f1ac6e7853a0b15ba42a28efb9cc30b146346b546018966e94976ca28f26a1950dd64c0adbb0c2e09bbd9caa9e7886a2b3d6e2b6d6616b718f1322ea2881ca59ef73948b1bcdc2dd3970e63cbc1043ce42af0ea1f95d17268cbc3ef062c8c31a537e94a20c1c505a6022d5ece7f51bd9c754d8c47cbe80bbb30b2159991a94dd3a25e64aff8a7a17374b5a71e0c7c241cbfd7f084e18a50bea512ada902210a3881ffcd42071ab09c4d80139d8980d6dc5d12c2595ced445caf22f80d8fb1a4c243da47fadb8e28e9c04fea820a8a2f032f5adff8b7d9269e63db68d196bf7f416405e52b6b8abd8bb9d9694b8b5eddae348209963738cd9710bd6c291af1c8eaf0e52d2f2f24bef8c8bc9f77eed40104e07c8ee1b4cb358fc73e2653fef6232b5e9f5d0be26b91a0b7967ed5e3bf10c449424ff4d11951d963677001d9576425d6a9c4503268a407d74854f5e1caacc0ccc463dc56c684db1d80b370da238915579ab82cdbd7d155adf10b96ed71100ea92834e8a4e4f5b7b831bff6fb4febe01bb398ea4065446f277f107aa3cc06e0b7a6e98434bf57744ba9ecb8effe704d7f852e16bc33ac113649f7540b7a7a67cf5493b400ce06e571d485af1732938b79ded4de7dad97a7e1c0be7bd479dc264647bb76503168423e3f6fc95f8ac8ea35e39f476ab54e88286fcf73eead1f794784465592fe4ad112ac63bbc3b3f35b87c40bc5fa6e3ca6cad878f9772a61a23aa00491a9e2442eb90a32af2bd74e99d075bcda20288bfc30f3b00a7e8e1a0b4791573abd65284bbb53e2b7d667239b95b332dd423e4d7c512de559bd53fde5285add9795bda81ec142620e693af9c787a4499dd76ca0d77d9c7c4043e537ec6c1cd0b9a642b52adc782a0e00f6c1ed7379d5fff4c2feb19182db977f657b195e4710ff00f78e35a146119897495b0e1a0068a6606292ee72bf65adcd2cd29b4e59a4b3f82eac77d5254013d03d2fb2511975558906741912d09304f0d4cf08c8f62690c67968c869f75a4025224d8e84baf7a42e01b4ecf7e55d7c45839778c2266880d1bb73e3aad618d1a4f8d5a16914d64d70438a88512649fd4caa90506e5a2d58a33ecaebc9b2e5f8ab2beca57c829ae02fd2dc146e939c3d295ada7df4a07e74b356c6ffd7a9c546b9eddf7e013cbcb2b57ae0d225249f7e06a415681d9f597a060fd55e39bd56f04b863efeca458a0cbc54b660db50ca40d27a3fda3416860e691cfc780593f06b467700968bb918c32547e378b14b4e0dcd11cb0b2fb36ea70946ac62290184b4eed38b51c322a75367b50f558e063bf363341a17c28ddcbf9ce53da06f26303fd156423a25f686809bc9845a78e0cc3d94e04bc8da85f22a4a8ece2c4ac2c79e54dcc4eabc61e067060ad880377a71fe0c2c0305256e4f3c637575f086e4ae3d7ab5d106fde03d24c47dccba3da23a244c1f50a4f60cd8d71b77390c5ce6d5612fd0260a2f33389b064ae6acac783eca62874232fd3808fb2188151a43de6cebc7e245106183f7d929f1eeff6f972da3e3d967170247925fb0f04bf38e88d06321f9ff9d2c296553d842b69036a2b6de2aad3879aedee723ff00736f7b0dffe6182104105ff0f0b636f5192d6bb5ae7ef950825827d2f3d6285d83aedca3f31474e0ad50ce6290a0e546c30d900e5b4208ecc8b3aca0ba3d110fc3c0a7e004a53e5d0ba1cc1c2bb42c3dbcbb4ceb6674151932ae56f6b03cc34ce450c292fecd2456ddcf42b075e6fd49305fbf265a36f3cff61321dd60f16e844089d659130947672a2d059e04af9ef653e8afec926b5a5d411f60a2a435437095a1df8dc60a616bd1a1ce7b5251ed8f905becffebd635eee8ff0055c40f146f1350a406b853ecb005c6ede4dc270ce6751cff915aa27f5f6b0736da14c9949de599d57868c29cc97ad03bd89502a34b88ad29c8762d0dc24a6df759821882a32e70531cab51fa1752a4fc49cf0706cb24d203174b2940f29ef8b0ce65b40cfde4e0c7310c685cc8de8384e485a951192fa8c36c11f9b88a48caf027dca6b0caa4fccae70ea6c837eb82f926ad7691c7709f217220d71f6e374fb8522a84c118b5c25f3d56acfb25afbe676fc9e574b6c5a59c00a0bbeeff61fd82a1677f3da9bb596133db491a8f11b945d930c8a67de9ce80025c764d518efcbae25d9194dc96c31ed02c63b1ac976715f7233ffed7cb6e929bbb5afabd34bc37c095acd0abbbdb1ea48e40a30ac99550f0ccca19ecef5acb2604c48fffb53b352d114fac72d6fc019ddec558406668f773fed9476148133c0f9ca4d1fd7e70dd04bfa089dc57e5940f29a5fd33dc79913ff48853794fdaf891d71de94c4a4fed0544e09f2bd578b07003031b8602f08ca8a79fa5ebfd5477f4d4f031c3efe0db273446a99d0cbe21a3cf43f3b82774e4657bb4f9675adbaf71c52953f0b18a61e05a9c770536fbad215848f8238e8730b9085189ea4621780dac500d7d7dc7815b45e232f86592498f1515ac8c50306013524cc5f0a74b67bc85d435d332ce69f00641c86a3e91be84b78ac358f35b18d69679df4197d3be8554417cf44aee6dc623f68ce3388df18168efa1c87c776cbda792f6110b6af178eb8200a91dfb72c1e23b5e5a66b5a3ee3f4c2bba2ccac939dcb036006b86e894093922a95fd70baba9424a3d0327a0f209fe10b39f3cec3f66901a2834e58fd56f94d622dccf653f08e776c9f3e1b0e5b3cdef133834b93c41c70438d51a0b127262868d49ca91623c3d8b75c2cce0b771b9ac941bb96029e782224a3686a7c0dd164e162ede667e0e5817e7bde85ad3bf30a6a5bdc420f751679be74a02f84aa93b971c3f45a67d155f7ecb1d5284660918dbf102bc16f496fb62a1290e6b88ddaff55740583cba13076afd623276634e0c11663be50766980949095003ef5bc6f90a98bbad436b67928513e70115224f672ca2a24e27bb98bd5288c49ea23d47ef13c5ff28c43ce53ca16a6caeccc1f601226253c4a38a88a93828f6c800547cadbaa6d7ad26db618cccd38a671507cad5ba0065ce2edba81a059b95c36c5d04ab456fd6fd81ec3738ebe546d973c0886a5e7b83dd9c2f58f5d6c19519e67575b3732a486555f8d8c4ae004a62e8d07ab2c8ef74cdb96aa99d75aeb1c25985996f281d71106910a3c3da17de35e04dbe00e2b7b75ec2fed177a7f2d04fbf68bd0b8af682b30911867d4d1497ba060b662f4e97a8e7fd3613015cc34302377497cd08bcdc29f06dae240820d2ccddbf8c95c76a4ba5d3e1b37a62369ce3f79fb74ebd9bc82c3fa3edad4034b6715c2853fa7781c974b5a4e541e8b69bf4bd653fcce4e4340d9409fe9112e4d253a3b7e9d43f4426127b10f2d5d3fcd2193490f7d933e0cc53dae552f2d7c9d77b8f9b27c59105cfae43a0aab314a0820fbb5684bf20986e3be215688b42938d272c4c0edd17bcdc84a514d2483456d6cfb4f5c1218859ee55bfc77da36c9c75734932a12fd03df38232063ed92024f8ee7c21f314129feb10670bb4d6a0ad4fb3dc57a64cfe6509a0770650cdec0efd5e0b1fd29433cf871c9ddbe648319bd481357326ac1eb32b4bef4ad89ab6122e92dc786decac88624a4a3963ae771f8023b9a92e446114764c53d7efc07e3ea77a9daac5cabbe648a223e249db62102ef7b7b6d06df46b6ff913911b89848a47aecc0563fb06b6d77fe1daf4541cf619105ab68e0bcdf7a05af22b0551323bf33dec8167df2b7fac62dc9e286dd3462f488c82ad194f7fd5d3ca72fe9c0c37cdb6d75684326e5cb30319ab333fc70bb197320acda161d2e685e78ac2cb1417223f64742b12a316d590b18a4173b2a105a381baf6f383ec2e81d04860b5cc536475d7c5d05bd6a7db1a5d93930bacba8c1de63707bd24785e19fc1f15ba724660ac00d0f2ebbcd5528b8cbe4f3ca332e8611e937a310fc79d234be6c1cd09d6a5cb06ab36a9d667188144c81f86aaf0851763573b36cc21462ba4f3d6e95d38d1e9b943085661d234ef6d079bc9d84c7447c85baba88263451ba10559e1ce326fee5074b26b54872e690a9a1e589e1c444daa3224b292bf9ec4a604dc512760084084f27386c89a1190b8905f0d720508c0ed69272f396725805480188aa4602a26e833c16aa5079c0577a8203ec0b2b929ef3b410bb427c168b7fefd1be652f06efc61c7a295a5d07a9fd61bd5bfe67ac5f74e485a66c92950a1b460257084ca3a3489943ad450300967234b487fa3def4010f9b715196562ebb0846b7ac3eba47646af6285582b4402f64aa684dff7d9cf81fbe1aa88959f7906f06839389f2ad56efb5029afe1d5ceac99a3e698f49ff0da7db06d7c9e94a8773a13fab93def139667b4dc6b741bd2769da7786acecbe315f9006bb6b72abe5bdc587d8d5aa8f67aaefef68197fd2e7874d9b7da2c3a5618720c12e8fc31db3e334c47abcbf10c6181ec14af4f9e90e19a35360a793b1e9b336e49b3ed67568a860cd4c298f967ba323d3158219596297e1ddb8a1c5d61500afa69331a4c90861852f533657b28b97a343bc531a11ff634b157a6d859a35f0d2a595375e11a32457575f1d73da033bf5eeda12337b9fdd46bce192d3aaaa240a8c65bf47704d6aa64a9531f9de14a96fc9fe380db35dd5ec52321c67fb4c18abcaf22fbe8f602ed201232251317e1a1b71e1e2c924a92d84685de348eec97fed954b7f6681ddf521b4ee03a1aeb2e446ee2a7f4dfa37b1c53831139fc624c14dcc4d144ccdf758fd9f344b4cdc1df70f6a24fa78cab136c912d1ebffa7053ccbc9b9445762236dca409820f738370117d5c369dfc50fd42277f14eeaf29110aedcd503008c42914d04e219a8b6c01e337d04724919b07157e2275ba6365a9dba5ebc8019bd1aa1b8668023f64cf47e1b49b4fbcfc10d560bb74405c90751504db8100d8a8a1a3ff84d98f1262fbbd6b962f492b9531a7411c08e7e56eb0f838075f754b6a395b6b58a8e4c47eb46bfaba2ac94800a396749d18ba0e6219f8d616ec71a1e60b3bcc24e19d4a20ddbc6a871e6d7efa50a362610598d892a5adecbcfe217534deee3620dfc88c7992ec2e710e083ef0a50c20621405f654804d1af4f24d22b8ca48f26303e6969127a74f0b276a5624c3b84410d4d5ee3c62605876e60a88df2bd6e8db8c7e486fdb452178563e7add6bc126b721b9ef8b12181989b87031573a4010d88e34f15a2344e4808b74c99ad68f0c2aca4e8d504397c03e1328c4b1ec43fd902d206c3cfb63d7541ac57fdbc70b0033f87514286101231fe7e79668c802e1c23d61540cdf13a5e675b736e221ddc29ab747d9c64f6213f51d3c1ded2e2b0efc4e45183d90468f61ec1720f7a0b87947e2c54125cebe6563ee4415d886bbe869d17d36371c942c11db1e13c1dd40ed24cabaf7ee80eae6c4db934e982d9619d753dcd679c5650cd95d21582e31b259043a0d03371cd294f4cc028042c75070c9b534a2d79f164ab9d773295795280d1584ca664b53b263fe2e23534d27b0d85742fae8061e03187795129dd272041c6eb9c10c3406da1f752f4ca697bdbddd74975cd4dbba5687fb30ac4fd5d2579494eac73053a63821a852cf41a80f6668006f7e1c4e30b48d638ebab470c558d42baeed1adc8fc71f73e95f3ca212a4b009b508e89898727f805685e4e7650a2961d62c117d1ee9017236a6bffa0c36ae11bc52d346c83399e43c42cdb9f443aa307109a97ee66ceb7a29eeb2f1a2bb3ee1492229116db07301b2aa4126aee7775daa2d0eab4d206fae11b3c6b565dcc4c7b4dd1cf2abec81150d0629803f6eb221be384b8772fe6d6c4fa98c928a9d0a02e9ff8bb7a2168dbebe140323d93bee8983c496bccf752c372b795a3493624cefb3cfeb4307bd39826cac1ea3f18912deef1b8c8db30bc016990a477bc0a925fb36453a9e21354b2d7e6e3d4ca4dd20f27a8db05429d44b7a485365191dc4ba977a815958faf6434813a9f4046054763dd55dbb7fae892b746e169ae046ae3361a9f75cf622b03f75b1633da864395bd1c3a594fab0b1fb37f088dd1f2776e2b795c78635c2026a8ce7ff40968a1960786049a217dd8872ac0c01f4bafcf2d3d751dd46a5e1bec00540a9ca7afca3ef37575d4a8b1291d05be94913092890a9b4bfff39edbff307e5654896e79228777c0f8ea46c55bfe19e522bf457ab4e6b0167d776dbcd0160598370a12c4a03e4edc82b245a7608797b03d4ed89dfc2a5bf07b9fcb251fb8608553f3b3774818717a9aabe6b2ded811515ba454b390a6065bbc59552f3bfe51d38f139792e1aae60093a7c5770b52a1730feb1049c14a7d5261d644f6b738e22ee72aafa422bd93f61e1ccac0a5ef4726c66f61bb539acb937bd63da82c700c0860be90ce5621ced22b52b63d041266fc258fbfa6641aef22e97804e5138ad2ce4405eaf76bb0acd7fc61b2d6de4aabc5c28a850fcf219cff77c97d3cb6bec0067c171b912d11d82c56cbad56c0032a9657d4cdd1eacaca53f40f5e3fe911127e1cd30781351f180e1413933cee2d46ca0eea31ee01fe4e99a567edd0b10565d47b87c8a48366143e889e52d0ff13c920aea092c2545fa9b7056204fec156549d3c0a997bc1cf4a01338483bf5c69d6958ae038f1c3e3b84baeb2c1f9e064c0750602c34c6c483c316391d975f94f21f6dfe74e92c33228b408a9e2b9abcda33c497abba9c48a63e5c8f1a8d0f4c24d36a44e1601e8a09e8a5c7179bd4c44b17e542dd99cace87aab60a5e53325d544c991b6fa5deffa49fd886332980deeca9229cb2f67f495a7b743153854ed81e1623b12dbd65512d08a5732fee2db3fb455cf6df5a1701a2b8674633c6792162dc86ac76e30da225b0167a7e704ad33ba694f9c902afbeed58eef609874767053f59414d4d3eccbbcdbc7eba997c71f9b1f5139bb020d5dae1db6e2dcfbb51b5371b08bdbc3312b05ee6d8c03c8b5a7d4f23da45f276394f222b1a0bdf4e2603243cdba60ee0530387c88bb457ca9932f2283a4d55bb1195e6d325ed93f714e21908b1baafa467f1cec7fa26e5c384ee6828e77978bd1abd014de549a5e5966f2b2f4ba000f9d77f1abfe3a6c337cdb852c1ec59f61b63d543f3062dd2616a163ed7ca60168b0347b5c5646a678dafb4c502c333a0a48f0341b47f5c5946e42e571db0bfa0682a449ca64e71b5661a842975182399245c6de241512c67ac918d7e0c5cb66565010e881b8333567ca584321ead1c383b099d8bf1c56dac08cb218cde4226ad420d6d6313f9c4884d6394722304fdaa76e61db8c0d54eb1151344c41ce1130272928eecb2f9f0f23c752622374eb1223a80efcf0b937dff7d813d7be0340226c0a7b163741d9aecafcb7ddae5a219323323f621c802be82399e06d2e1cc582e759ffa303c5103f8a44d7129d2853b02e506abda57ad2836d7ff16f95232149fbeb8b62e586d3536bb4ae042ecd9e25d1dee789353071f9c89d4361000c47b763556e8902f1f25cbd8ae71679e03ff27db0ec75eeee3fccafc7fcf22c377ac60d3c61a43cb53abf6162118f2efc86a5ce80e69a02bc1db80018beeef6d567941232e4412a958ed012bf7a832c1eaf68134ecabc4927ad666b3d0f21d4e8d52fa37e0a9751124efed8bf47544299138a6f69d89e295677f12606c79b72451c263fca3eec22bf0c47c641159a0bbfb3b2b03154af533e5c06a149e52adcfae31bfc55f30064a8903c8d3b828d275a937b1e4adffa0597da5e253b50bd71b33f057ffeff0b2a0829b3bf33350fbe67c7c79034f80d69e6a21be495a848d328f416f15966491b218eab390544e39d498258ad80ddae248634c845cbe6f1c1e93e7c2b02075411e075fe936bcc75f4a4e1a3687cb3dbbb61cb31ddfbbc87a1859b3a48fccdd8e5915c8bf4eebe8f7093cef6a7a91c8682915f9908c854c483e90c9643467292884d284134dbaddafdbc74d94a5f9713719d62b4f6b4236803d210181847ca27129fde264156895f4e1822ef78a3b215ef56d7e36d2b94c93f5e931a0d13a3a3030061ce62de595eecf47eae6bf698530145757700df18f66fd7261a12c119d6679663b3c0f99d1705aebe66dc862eb21ccb7360b93f54507149b577abf521113991e06f345e8282fdc18de673e1ca7b188ee34b14f37f86ddcf97fef0b913c33cf8e5d5d33707dbcdbe4b27cef056670252f186735cdd02f6ed6bfe5318a704f00e34ffc4fda9855bf37c51be6a7423e44dd8a98883c8fa82ca37c90d681fb7a0db915576b50e49aff545b99aa3aa6343b814ba0bf64e53b2a1edcae2231bf20d65e4bb4da6dc8382120ede652adfb7c30a46e0ee784cbde74563d83eb8d89a1573fa104fddca9d4833c49dc904bda905426c7dee3e48b596c8ee201bea57fedb1a0649457eaac3c5b5f4519af3adb66f10b861e711cd4034448890e15047c2f8902588268b5645051f3f3968ed8d630e050ccef0d01b61ffeade51e4e72d8fd46bba4c20009396e984c424d174934a67a1930665fbea04c809e7cda0a2cdfd3a14d6b99c3a8d8b3691825830456876f188ff871fc861e4c6a0ca377dc1f0cb0f929f7eb1f5da045d9a588a393312acacca5c5a3b15bb1b488b08fc40ad65ae2c1df187eccd8377525a81d80df57579ae52f775fb2efdd172a41c370300fcc594c2635dcf50e9eb9d34fa8b4bbfd13078422e3a7734a8ae6cc09e39d07c7ee19838f8da4cbafe4162c8f8dc44e284840bd0a5c80bfc657c22e37e0d9a96dda34a51ce616c9ccdc95955cf85d93860da902ab30f11aa333eacc25c47981d8636038761ed4d84fcbb0ca92dd2e07863b9505b451c3c49e36a172527578123049ff2dc2b4e258a3f698a12ca4705a6fd0ce6bc4f1767b4d9c2e57c9ed1388527964ac96ff5e4cf5ad6fdb6a853b43905df32af8bd788b520fd526cbb95195a1bc00d654cb080acdf67938517a6cdac741d86730358be16465b4e1301f47f6a444c4e8d2980b8bd98a8dcd6617cde0b287e2d1f59167b5c445146fa49728111b8a2729428cabd02facb8fbddbdb2769680f288648d6baac53e0d909335da3e2b4c13ebd41f32820c9f491e9124ca444a0532f60e2816e15a5810baa91f64454aa355f9d362c7d1a461561689d08b1350a216b6f1bda57aae0706b3710a1b8e52a7e3084e600b5ee3dc540bba0c16267d549304a7840659a32e40070715c9bb912792d4a7b84fa06e73b9ddbc2f06c4edc19d25f5a198c7e3fc6226842e6215da5d826fcf5949612889f78e9de39d4e64b86b7033b5717a21f8f2b81c799a3fc0bfe6f5837b252eefa360c91a6148296bd19d50a343d909c1edf5261e70c8dfb2c488940cf236941ad3fd01247e37902a4bbfdd1839f7c92c260a2c494022fac08629303c8e54108d78ae2c94289c7f998ba3b622b48931ee7c17c59f5499d282467a1b8050acc94a0b17b21836c80b69f519b9b077d18e33c027faad562fa09f2cc6120f8cf5ee18cf7db9d729ffbb9de58885713215b7aebb8c98d9fa009be0a9ef3ceccdb2b31968db555b26c518a25a2b06ebf6d356e8caa85def5813dd1596d823924c4fb63dba5bd094cb64f204d1e59d31287715f831a1f0be95d8749f2166ba0b0b6b64a37991be1fe1c1e922835f2da0c074ec9413561d52166576b1c4f1e18f078dc046d1c284964b80217b55c59a474740c3649116b33e927479736bff6005859c7c00598f22cb8eca38af802f4c86836e8330492ac7ef3707890a8ff856dc7786ed769bba75b18484b257b3b022eeb51aa720639f79e6e6bd3d3c9a61f7822abe562867b4693f0b2f61135aaeaa510b31112efeec48d2602c6d4f2ddeeb51bb03ab18c18d8e127a37e22881febca47742b9332d3f2251003b1a46c40eca111d02446466b669568c70971bd33254ca577777f126f86f8a3665f065b645ff261e78e0f532e83a81b99c5de3488de74ca82daa0e4e7404eff911ae955acbb800f9f91b774e472bc14aa92817b6d85877b1861a6ca92c03c83b6f1490068bad8eab1f58c9e91e1029683de2ca45c99966966031ee86d8c9995f0612480e2a6d5396e8ae361d6fd2e24557613a1191f5019d4c8078628013512ea3a59532efffa6cfe4970d28d8c7aa8c866c4275ff2b0b4ef1a7e56854d7ee4bc445713da9349d13e30a4a802cb9db2f10280fd9ea043b5b3480441e8ed2d907eae1259befba9d87a04ce42b0010c70af157b90e0bf72549852fd122edd6cf3475f76852b13b4bf887cf32e25ad34aed7fd5a6e97b307f9b4ff1c07b2b55beef5ef3dd96eeb2a57720c18209d911a55341cee67e6ff577f7acaba01c2c9690b15a3b8aaa5b9d734196467a8c074b2eeeb5ae931ddf3deb15b1a8d603e72125c2e68ad206f2c4252a659f8248ff882a8e54126ebc0c77a46101072272460e683d465279a3695be6b64c9eeb4a576d95fd520be42eab5c95cbace0dfd80e2d67bab9f683a1cc9c006c02f0f90a21a0f51218c628f5608fbf1abc79aa63452bde1002383033578f32980e3779a8edeb226f6d3f9b36d8f07bddd7479b60346a4b4fa883940e3aef8ad8d834dad4405960a4409a6255e8753d0c0ad0960ff3ef48ce93fbe6b165e86eab36fccb8b989f5b54e6ccaa19749ff065a0a732d15c41b9072bbc6f07e1fd5a3df2775874e46b61ed50714e8c403fbed6884ec06f52ab71d2c191fcc56ac0b17ba3c46d2dab3e11c79383bd8867ff14b5fbca73b9ae594b6a09fb73a2e8f15aee59150e8d6d3dad9659025d045bbd1b9ca257c67bb78abe8f7eb9c8b3bc32951c41f7390bacc8c7059a2a9b078ab50413605aec604e4666a6ace765b0e7ab558fe6232f2703d07811e3d0ac5bf9434e87876e99250ee9db6527a8ccb4a3ee3bde738563c9746f941cf2cd7efacdbd2593cafdbe5171864b2982b54dc5a32c86638c0e650a331625033b8dd65851965ae791880349d5cd52548f4422a317f96ed79e7ccf3bd671e6dc70365f521c65206386eb1f99570a544d11b3d36fea285f8a3770ca303a965a0c1d598ebe3696e647be734ccf760d3d47dec75e236d7ac08019b6622a7b9f08bc8f0937ab75e75a047a7386befbd56fc4b2f89c852dadce8df946cb3fafe4eed2678caadf1a913ae32b2c0b8a37984cb700343c5e24609f8c5ddeff5e653837a9332a41c8e21466a13d79224125d5f6a4fef79b5adae7f4ab7d351c55400545edd3c00637bd27164828925e9bb5d79f1f1e6eb3270ab799ae38772f779565d92c47503de695f7aad7ddacda6f6c71e755b3737231b64715bf07849d3466e4f92239f733436ce674389bd16900", 0x2000, &(0x7f0000008b40)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000100)={0x90, 0x0, 0x0, {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0}) r2 = fcntl$dupfd(r0, 0x0, r0) syz_fuse_handle_req(r2, &(0x7f00000021c0)="9c87561f65e6fd54c26a0c384368c170039ba16dc2a1e1e1e72ccb47421f3273eb4080d86fe22461b19951564427a2825a8694ab5a4c44bb1b8a49f7f6511937df8e2e5afb4578532acb5cda7e0e76a6a26f769c9662e7f878d5838b7aea1dce565107625f0392069fe647fcce9374cf28901d654ec1b551e6ef6ed85202240d4219aa1f875b9691a2df0815f90e63ecda8232212f15b9c50064d717a5fab624ccac43917b129c4b4f501895a53e45348aae43aa40c66a5132de3326a6241c3b3061a77581b1d3a11f6da4102f0309808c4b9863779ddf42944fa0c66aef1d4f256f43e4cfca3a7c58a5d4cab7dc3b077042c185ce4e086a76a115079a95d839ddee8e6839a79c592e0e2c3f18c929347bd824b7e743782dac2ac5a9b2f876da85f1fd95a65925e5c703c3fa489adf22d2f85ba0676cd60efdb966fd31ffca3dfb874db3865672c9a841f18ddc0b01810345137720215ef2f3731885aa104b6d78d72638319bd828f160bfe34f019843b84700dd25e4d94844b496e35ddc79da43e8e7e078e1390842e8b49a5b446fd89a045b7b567a150bbbeb0b8768ee6ce24ff93d93a8de308eb9b41c032b3769e52ea9d2af3f5ada7f43fb8b85ef58d2e65db54ffb8b69dff3c5efdeb9964770563480a5884fb72940bb97bd0deb70f5c407ca995244a7d81b523eb3a842bfe2eb1cb4566adadd59b7e7dafec451763ba26b2eb60673954870e4c66d484e7bc85478eea90627e06568f49bc4efd323308b46c8dcea5c8425192f3aaf5a8bfff3cb5c8e4752991dc1ce1f97f709ecaaf919ea47842e8c596c0987a068391b8e08ca0f8e7484c69a6779a7fa6c29399f7d9d085965795d1e76205d00ab5bed6b814f091a44e9da127cc055bda7020281758383381f70bf4a468be2960ada0b005ed360d794422dbc9d55938cdfaaeb757b4f66c85e56c0cecd3fd717c68995de940e52c696d3f68fd7a8643d3f96ee4906c037350c32b2d2617a658bf85a196427fa777b1a9ebd41bac6e334c731bbbb54b36fdea02de3e549cb1fc3adb61b4f5ccf4739ebc967fd6cd9802a5659a3f9e4af976046d17c7629a807ff70a30296abc551aed8f6cddde67a4f17ec146c6bb7f8b620632bb7fb8284d698acf3f3dca3bdd6de2b53883bc6b969cf00194aa94f193aa072161dd49a1a73f462aee627b1695cabcd537c95c3e2ab9ca702cef4c7e5b89ef7ae2c63f49687d33985f362d4f9762d114cbcd64b224b22a95e536446074007afeb42fff844c418b7f09de2a4477cdfd987dc9658434448943bdad53d5a5bae8b1a989f854697851abbb5ecf67e957a407f781ec0c1b2ef9d709ae14c0ce579fec76fceb8c90924208e98868cbe07371331168c1ba62efc6e5636923e6ae35e5b9380f649fdae97ce23752b93efb7cb59f6a7f8f104b72a4a15a48732acc885cd93a8988b268d9c2d82910cdf12596a10862c57f66da4938560fcd47c097aa1aa645facd1ac6a2dd0835cddc1eb795ba8b3e2e03b3d1c93a59864e8a1ab876f3070fb605619f81d7743d92c956bce900a4df4768b81f472b8b32521ca1c9812b140e8c505a7a819e4f67e974840d361a41f8e91cce8314bc20ca823ee1ac153176dd0e2ef7a5dfa7c355d472fa295875a490804cd18dcbb22a49a96fb8e8f010d65e048a0dfe4ac82b0cae39f4de9cf3351b500182d4003ae535b338affd8faf39d9eee3f1dc15e4b8bdc1c3056272a62d9daec8f0d86b12622100e0a10f627a8d27c5c18fd3c39d7795794659f4277a088501d4cdd898d41ba98f07af9b816211ac47438c81c7db4e0f4389684725f59c3238041ef63cc331bcb97cc1648659cc2588ed25cf89ded9ec423cff384954067a51a72b4e0315e8b3eb09031ca19888c992bac5a00ca49c1e7c0b7e9e47238986d683ad6434f761a3cbddc2dcc146187c31e1f93816516bb4ad0e61ccb71097e1ece3f55be952e5161358ffe61378c5b1a1016a280de3fb5e94ce0c4f9eda6a0a8979b594a5e14c6dfad606a43089e771ea31e410c3f6908cb4c00573a5c548afaa32a4c7c8baf51a491c857ebe07e5fb5a996a0007a89a2b62f2c002ce947af73ea118b3f6bbc9ff02224715dd615a4d8d23053263ea1c404b45687efcfae8469d4a05d46d174b14e95efc04dce923928d664e362a348f7a78f6f1074f8969a398435ebb8baee4ec141457cfd7126c892db494a13835acca25856d34e5b97b24f7434005867f42431038eb252e029c05eef17214caf54d4b7d1a048fc230f2f848a3064844be0ee49196c806eb205e130f88ec77371d108271bcf3597dc9a8edeba8bc42707c51290c6da61be75d5682bf07aa9828e198a2e232108590aea6f3c564d33362676a39e8af767342a5da200ffb19476c1a1edf374182efa4d5592eea92413b3c5f38e2996699869ec9d3c4f004bd36661822de8ecd29cb98fff0cf18191c8ecc38731c5a44aee544456179263646f86bca01ae620c5baf9b7201ea9a5eb0d0e48e23c5a0043e588fd358ecd09b4840ac9813f94eee2d890801f47394103a4e711f7a42a318e480a6796348978a2f7490345ca6bf2976ca65f4a01b422e9cffb3aa66bdaad684cfaf62e130f677271392fe14cb997a3d129f36979deaacca1ae8d69ecc532cb585e1e3ed3a4bd534ce2382bd526df9ededfc776296171e8f294a78d9da0f432189b339ff31cb017846214a68a365fba5ef7fedd7b839ea55bdbe11a573bbe55eb21e296849be8b14efd80e85d645573dcda6cc2cb0a3bd6f5e3eddcdeaacfa1e5425cd419b10e3da678c9803d5f10b33509726bbb0b8f55096894b3e36377ea33d445eb191c072412a62b79707ea66943dbfae4ffaf2ebcafcd9a8380c7478a08c2972f3ec1c7e7f84c7850ae885a577d41dd872f32f8563110b91a25d05d45ceb80ee0d5f0d0e1041e70b4add35732bb315117091e9a03e26206a236ec8f64f443bc0423d4e5750f0e9dfeab203034571ca97b97e8afc4b842aee130e1a858f09fbb2d9150428d2f45f785107c34424050f5b97758daa80b07d087ed166c5c9c4f068f0904aabcfb76ef732ff5f6c7807433e5ef6751b170ec5738d78ec4110d3f20be3c6a9bbff10a2fb5d129db06520e31121b0ecb4d3699de6e3177d0d6e18fe04ef3c499024a66b5f503fa7a0538c2ddeab3d43dd364ad3edc10043a7171abdfdb96ac8539d898821ee1078480443dbfb527706a3a5a391ccf17fa760e9d6e399de5ff60c233706f8877f4e0758456182a1de8e6db9abd3f077a45f2f3c16adf19d7307dcbbc9393e70311a3f9fe5eb71bd1568298cdc8a6a27a521e4586008869a96d8309899e03218956b2495dac63daadc8bff28457f1d958ab6316bd55523748a19c34ce82c3ed751ec480e871bf0366d353e774413c9baf420b7c4da7e72942effad1f20f4d9bf2e0add803fb9a07442bee7ab7351d5a4edd5d43c277a246f557d9c2eba0cda3f16e31953b00a89a9de6373c6d7f741c7a03f53465704d04b6d862182f6fc5b3951116afb5a90509af65ac8c96f1f35296f72c92a06b62d00764ebc2357953c8126fbe98686f885a5f3551e114b9b3d959a05c6fa227d443501021b838da217a336d6d53e8093004a720d556a6204d4d324796c6b8e12a31db2c258c53643d7d678af827fd34d59a24678587345046764a7bfbd6cd4449d138d87a943ef941162020bb622181e58819d72a32d7242283e8d0e0ba0cf5dca29c75b0b73efca89f62b303e1589adc816a41f7ce45889de8bed2649338f75194f436b45806e4f5ea6e0675c7ae9ebff148ddf3dc33f8b283888244a21cbf00bddc29a0fd885434c97a7e11b55f6cf23a2fa51c92059981fd859ac62135f72e3aeae074678264048599af4635855a2ac45c91816e1f00f6b3ca016db2febc380f0d5921a802856423488cbfad06d351513858155bae8cb22b56d781cbd8892ec5c5faf543eb446e850335a7ae7ed339ef521b5e5752164852f204434fe2c85824c841231fbc5b165147ad4cce8896ccde0619ff893991414d81a1fb69d2dd106b47aaa05e20b66f277ecefc40148df97141a213d5cd5bc95910972e58d05a1ecb877a9a5da346ac9a78c9466410241ffa8a82504b747e0322e554a7c54b37b4b4b2e70db461d86fa0fa61cc63f1f01322ea76ce8220ac866f3c8d4cfbc73708695ecce67d7b37193bd93acba14f809aae869b1b24557a2e8c74dd95cf0ab2a33bdbccd9eb15c987f61b4a1aaf92f4fa940d3ec7e9a9bf00b3c7a42b93dd6c846cb45762737d6c9be99378da71ad99c47c3afcd4d9de20dfb200a6cf8224a91a46a9121b00fb7b30a399876dbccc8023cbabfc3762c26061e989f8690d1ecbd8f0c8b4348ec617cadd6408b3f9f8e8d1078a75cdba10b0aeac497440ed3aea67d342f1db35038d5a54bd3f3a64d95b376fa1998bb517d390c9c7da3e9e67e8d04a82635a4bafefd6fdc77eea1762015fc6ec5dd0407df193dfe10f8ffe463b56fb26af0ea4b0b2fb6aacdd7ca4f920d2d91b376f4204a74fba1cf6389aa73bc14bfb650a0d7c62c2a790f8ef6d7dadbf214188febda19dba020cb9f5d8972b22362336535921fd19904078bfed69e7330e7dd39a1f73b2b246c97fdd53a7e488eecbc296cdce9eaa6fba3c6bda329d5dcd49a833956c2fef246bd81af631ae56a0a6daf95d2e12e95a31125b2fee17e349ebc5a5209a7d79b53d60a9a2b4fabb0dac2063bac7c6e5fa98cf2eee67499035814a22538ebdcb94dfd2bab2b631f7df61ab1dd03f75d4f638092147c08c3c9f2b584d89c1b5b8b02b3e0b12ed0720fc6a96dc77f9865994ff6f88bc72a1d82266e0baac62f842c8010bcecddfba2527070f7d8d9c9442db8c2dde1895121a5c1425394736f1007c0ca8474f81098c1983bb9690f974cecd8918364c27a1ad03ed0e3ad86945bcd33fbf50bfc89c78469cdbe5a2044e3733cb521e05fcb625acb87481c8d82420fee5e73d0b241e9be6f68a87fbf8e353aca895e2ce43ba0673659a45b77a550ee7fc073833113a06bb993025aecd856bc95e377a6976cb5cdc3cc1ff4ed75c9f5e38c6e166e19253bf15c5b0baea2274940058103c97af8fc94b73090c79c87aad9ec4620b5aecb5448ce4bda0c02aa65e0db943684b7aae31db3585fcf01f28d59c088b46f0dad2e5b247594905f259513899fbd89310d3ccf9a1f99ed85b70e28d687ca7884a92a0d79a6f81c42dd5a6d1b505c7b6b1c1af9dd5c98e3d4a408b50cd1b1803fce55d4ef05a3dd59045bdbc460c20abb9792db20f71ad64893e96a7c7b69e35f8ec2f67485aeac83f42845129d6b2c0276264a46c1c6393972d19425b51644152b24b5cc719317ad38fccdc628c372cf6f7b71d65cc8ca2489e6fa3e12f8a0a050502d970a7c11a3cfc9fdfeb75b6e1d15c474498edc74c87887782530f1195990280138f1b204cf1eddfd6f7b44b4d15a0d092b0e5246c9c683d14ddabb7201f9e5a8be241d7ab233735ea0a9f94a8b7b9feedbf7a29d0b04f123727af7416a11b540cd593b40ed97959e7f8377a5dd424beaa5768f3c67ea896b2e23cb0d34e1d7fec5c5bc165bd5508b1bb57e3f0188014eafaeefd3e8fc2b5788b67bbf8ad91225bbba50903124179947114dba43f9c11b59b7a1cf28d4171fcc759f928cbb5e3c48f876b34bd1e3d05308429400d1a521022f4bde20a08448f20f7b66de64f6a7421f9b9f8d573ba472073e6765bafc771960f4f237a4f9b7424b10d41b8107b72b4f5c50171152787da2d572cb709f31114481107d70f3b5e2fab3d525918f8232a3af21584bb54c9a1590bc7ba45bbf59457f3456cf0d3c71402d869e9fb965a1aabdd08bf4911d3f7acee71279203f4d199bb2cba0b333c233db0cfaf73522e126e47af3b79ae49b1912640737e57160c246a10ad38b120c95e190db0933a835b1252153a13a8efc21ed35f621869f3f669d589e06bf3cd14c7b1d0a55d0cf8a89bae28e5eecf6ebbf4b236a7df6c58e1b796282be7de8120b805b677244e580ee57f0f4bdf7a0bf8a0ec09fb98ae85bd2e5fc6a49faba681d70c74d2aef2ec7fa3b9ebb8b0d9f995e7ad672f96ec3f3daf37043961c387623976e25cb8fdb7ccd3e4e069380ce281445cc6bae6c28ae461594f3f07bdef3d78624f18e6703b6bfe10504a5b616534e26c64b4bebc65408ece8a429dfdaf1a059a5e7a06a2820ec6d2c7d539cc35534b2fcf61a019fc27a64d25a62eecf20382b6f477296c739c93b4f72959ea1fb1d91e812cf7b7eb1cdabace38b3fc0259c227bf43f491e7312d715bfe8d0ea9d414ac2ead8126ea687f7fef7e7828869a793ff2fdbda44b34cd14f9c01555fd6ca970698aa44acc72d26b5e77f725f71d300b5451fcec42eb95c670a285cfd6b99a15d9db35cfa6c002abfeb7e2915c47a8733b277b840be07e931d1bad5166fd65c725f4e698eddb7de148ad6d28656150e05bf851f2a7e546b24945b2f6359b3ddeb67e6d6e9931e8c57122db34d33b7a6c287c9eab52124f96166d7d0ded7367b8706a6af7922f29e11a588eeb815cea5053b31f32dd5ff986a4fdfde41e23007cf60e417838925ee94c1771aef0e6618de8e0dc13cdf2eda7bf3bcdb6c6205aae6dfd6a3b80bcad9a8b0765b81acaef2b789a251be1250eef3f8a8c7c9d5b648ae105fee9263f2573de4cd15523acad7e952a44dc409546883e388f4b203289eb668500b275e4effacf04f352783b1d7820ddddd35d3ab982a7d72540d78844707fd3a912f96656a674a854a59835d3a7c66d15b92bb81318e6125fd1537a1b08d653906e7a74b60774880f7a662eaf366d8300de418889a6c7377ddbe4591486883a65aad35f7b6fde31243416eda0f455dbccc67d7eb1f710509ce62c73288468c02b23688071153bb619238fc580db8a1e5c577735e91499cb318880690a527fe99f5e6f8c96febf05c184465799e3d9ae0bf8440c763f528423542f35432848cfa267f72f4b3de7c7f8bdf43f82a9c7546da5a67eccfee4e669caedfd3653e036568a5b70f49832dc873b97a3f6c304e8a781f7ed11ec49171906a96fdb7ddf35434103e7e36c2e6d25814ea2e87e6390f2734f0898e72329ee1204515a9fa51794c8ef37f588ba5ad4279999af03b37365904426d7b2a402b7fe7aade1025548930022aa3702965f3ae56ccdb90e0593f7dba24889afc88add0ce60f9f19c011cdcd5113f3e81ebe5d74f9146568d88427a7966925ec126300fbeeb00379cf8baa73867f2aafaff3e2f82ed5e764abe3453704e6138e30e8087f21f48da6cf71b74a33f51732c207f497e9d149654ad1dc4744b63fe04372fbf71f84355061461da52a2dd1e8612eb9f78faaa26ca5e67af47946c662aa64d4e6305bf8f313324c00d5d05fe75673d1eb27d84d8906ff6933e955f698962fc1a55e9820edd14660e01356d65e03bac609ed0afcc35dbc491133f18fa3a7fc23eca1a851567bcecb722ffda324ef88e109ddf37dd339ca3276eefe27341246d77183fe249108b25c8bcf699ab5fe7657daaa272c762c9a24d4966932763a26aa5a18f5b9209406456dc0924258b3bbdc56480388bff69de42b070a959bc044ff34fd3d85e43c8197200eec0f999466089930c158cae7e545d62b9a9811c10fc4367349ddbdb73c52c0abbaee881640626eaed12bfa29d050f8d2bc9bde693fe2d8f1fd58d1a0b07bb0a6c0261d1268a612e4c0788b2b2e0c9a24dc25e238fe14e66bb82e0a2dd00ae275ea5c0119c38863acb1368311708ac336bfe5f9b388fc5254312acc73a65ed9c08053b59e58b308fdf87bf99bdd3fa5ec8a9529e3270ef53f31334493002340417e2e766aa0b9172b245218aae97372f0fcfb870a5853cf0613475d0a8f548de6e29759119a816e157ac2297ab0345478e156e3cd177c014986a40cac70db28bc7ad561e460a8f9fd01731cb1867a957559796682a2cee1a7a3a22dd68b66d463fd934ff5946c98cead413957a111dc47e69eb49b4b64834611c3ae137be56781639c2f70fcf530032d57e350af18f4093569b612f44d497e4deaeb0cf79da10bc6a5ba9dc7b4dced56663056c7571219cbac3880126395c3e83a4816d6a193194e8bd4d51bf742bb521cdaee72070ec988798de92143a958395806f4c8babdb94ef1a700a720e6239e96759d4feea38fff6097279a4fd38c3249dd3fb8836ad2be72f7579d1e9e9fe19dd82a0df59d8707e1d9da3e87ea732318664af7e9494350e452fbdc447aa7539d4e5d73c23ee3dc7a2e89d340e00735679470db9048aa4f405a9d93216a0c464a02c8f5810e194b1d7c5d084c4aa14e57efea7df8aa92187d68ef63ababd52576dbf7080154d38a32a696cc05ef97f33e4aecb42de146e19b9d2af3260faa7288f04837507cd0b4dad6551b560d26bc4eece9961dd9864c8e1d72ee4a954d060ce189f122a5aca16165fe9cfbb11a723aa2b1eee766fe2965419f89ac94571bb3212e5baccd2db2604de39a516a8c980fd4164033b3c8b8118fcd4c90f27a833381d644c18d7a542d5be7e38011e37b70372519ff9463b61c72ffceac349305bd740b4c53a746f7a1abf56c838956ceeccaa934ef6a88e308fa9c63a2339ba9a729d6d4bb2008284997dbf72e98acd22010f4bc4c82be369218863ddb3dd9832e0372af807dd240792481ac89609c3f8add02ec36c28d47c2871c161f776ff46602d85ef0e9a78da088c14233b2bf1c82806b4c96e8366be44441173b1a6a5a1cb9fb2008a6c39cc469b4a7f470954f7f356023600cf6a615be37fe14530e9ad90072632b923200b210c041d0f138f033e36cefc686a33ff156fa6a35ca5e5cac9244c3ca2e4c9ddd008c040cf2a61ac9c69c13c32d31c9e1d049d9cb5598e47b60842f353ce8326f23841a960e40656f407974e6cd531f0eca229bbf6d674aabc6fe7d2b19600fee9d8563636f1cce4ed44bade06df6d1cc77c6ecaf3edb73a8db3db143b9f30170f11ce00cfb6cf4b09bf29192746ef9d0493ffbdd51374348be60e25fdc821ecebab3d611687022606ebcf519523b4537d1c19f4a29423917b5eaf78abdc96e209cc6a400939b875ab1f9c2a734398bdf9c6405bdda065c6ae0f42e8a7ac5b0996e1781f84350d1ee8c948b69b3f504f662fdd51100b6e051472ae2317958132272c68348b6a2658ac37e6a0ebdabb068a1746beca617afcc2bec6e449a10d5e68723ff5accbd9da6984671a51010e73a07f3b313b7652e0b11feec8f94e10ba037eca0e6f111e6d065f6a108bc887750e112ceb0e3144c46f9319c19926eb4850d661d4cdae0a2ed5db4e6e32a42c5508d2731f7ba8bd0ef7c2ff77b0e1f561fb01118563bd7eb47bf1b70640b7104913e3eadd3877fa07586e0b31e0cc99b54b82dc00cc1cda77a6ed75f77c2929e91cd885f0aa56e2d966cbb0f9d5f4addf02c3d4428a1f82e04c1eada6112a0d269bd0069d79c3c42b13186b4e3b05c8223bb93939d69ad266c5f9c41b148b058c920abf3bfd1c67ed4613c14093bf46f28780e8736ad3f41bd533460a5bfc01a9b3f89e6fab8aa086863226e53b54b4c3829e4a71eabc29930377782567a05f519279f5f1ac427da56a2b84f1869add451efafe723a907e4646b355ef9863af6c9d73500f4f58cebe742c922333abc3b871022e2c0e9d44830b2e8f822bcd2600b7f779be7aa368d3532217f152fc820c6dd9133249dd555968c90f325acd800276989dc6def1f534bcbef51ad4d3ee1271558d4bb13ecefe0effbc680722bd7657653ed2e740c796e78eb0379d7d2813c1731eccf2673bd01e11a9b7c93311654b718ec830414a10942722d93541311c4869e0c654390eddea3c3182851aa2dcc63b671e5d5adf5e4cd42fb1e33677f127cf6bc5b2ff427ec9056556745812b40e91759b178e757f6a74bbe1e6f2ee1b762e38a79963f05ba6125caa28c402be89d2ea18224082d7a246502fd1c2b9f6331a898a26a951567ea2e22020d6da4364fc4c0e7d989582c8e4e67d7519a5d69905b7eb6965b16af65add7e0dfeb25ddfb7b0f88d798a0741c202d923292b8e82e7fd168a548dd257ba4c78f25170328b990a5eb8acce0679478208706b87938130a6fce7fd6f0b9426cf70d36c48ec239e308b8d06032e8128b1558ef26b0e5cb94a0c70e17f9d7235ecf2dbb9d230f634928a65af7623931d995a99be950c666cf6f285bf05b6025b3d7390558a44f02337194e4e30674be57e224f1ecffe5f923c333b27c2763bc2cb9beb0d1f94c9bdc0062ca5c8b93a8a0f3b5b22271587e2e40faa9a7ec18e182acd0be41979fb7cbbb27b6d9f0374016097aff0f64e67c31cc0b2f4a758d1665174aad74f5c00e24676a68e96a76a3ff375df67d951c45d6fa6e271b46ac61eff326986b359cf3775636619fc379d1d3008c2b2b244ec1a299bb4b71c8d8ec9f77a79728ace0888d99968f7f9e7fdecbbc313cf969f2d7a1b44ef26f304c9cf371a6c1fd82516e13fe655a6abd338265a032c9714c9ee51ca3f18c1990e5d10aadd22b50312f5c677c4bfd9c4c2cf8a273fff6dc6300a0966ec67caf8defc924fe42829c10ba50423c5e48ae3b275076602478e680baa8d7ef8580d3c4f56f85d85450c9527639e75137402beba04fbfa59190320d107e87ab27d5875e6dad431c86e6c97728706bb1450f4ab12e8b0f1501e4d0051e3dc331feb8a3b794fa593f5a252ddcc79cee16a2b8252f42cf12834ab12c8772b6cb80975e90d6fbcdf8677cde22bd7f349e8773567f12eef81f0e62547a2298807df0ec76675a259f9b768dcd5714c27d6324bec379ebec3eee9c94d2378bdd892030042ba5e688ad00ceca9ee030b8b697898ed84b9cbf9b03cac3401e6712acecca95c0701922e059457f1def4f471af4a47a8a2c8dac06fe9de064e33860ae2ecf2293dbc1c8d0c0319916f9041d914682f8935d162267eaab05fafbd523c4bf11bb3538677e93478496e906a9b99db18fbfe5b3bbd68184ddc87a00ae1e0bd9ae604e39020eff1fed612fb341715aa72e061e38c0904643edb8703790ddf7e0930c356babd6e262491b5a89200851af5715e2be1776ebdc7d31472413d6eb6021c81fe089eb6f89d0341caa79224eb72d4af4e9237e9bc1ae199f507a3cad7599301a4397f370a5f0cca4ec19d9633ba4a7c6669e9a3ca816769d313e90f34a6f54083906025255384a09c8f79a02f18a99ee961c8a88e55ec54734fd768eb106b1a91ff8fdaf8e2a632e76bb5a8902232c3584e9eaf6e1e571ab423d11eab4b0f0ec5205794b7da5340810c4c1ee48c45fa1315a9f938cf16e937febdbbf46957567c4aab315d9906d037d4c4337c2256b25f26beae3337a4e0836a58fd641a21cd876988de12e570918ac300b858725acfc9b65fbb0731ee33e93b4e208c86dabb6ac278ab445856f5580f1e020343fdbbb7192fb4d4287c102db43c8df4034d8e9a6b487fbc430cdfb9a9a4cbd3c9761f40a81d8ab15", 0x2000, &(0x7f0000000d80)={0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, &(0x7f0000000440)={0x78, 0x0, 0x0, {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, 0x10000, 0xffffffffffffffff}}}, 0x0, 0x0, 0x0, 0x0, 0x0}) fsmount(r2, 0x1, 0x70) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000000000)=""/4096, 0x1000) r3 = syz_open_dev$audion(&(0x7f000001b180), 0x0, 0x204000) openat(r3, &(0x7f000001b1c0)='./file0\x00', 0x212400, 0x20) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f0000001000)=""/102381, 0xffffffffffffffc3) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001b100)=""/103, 0x67) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a100)=""/4096, 0x1000) keyctl$KEYCTL_CAPABILITIES(0x1f, &(0x7f000001a000)=""/249, 0xf9) 23:56:45 executing program 4: syz_emit_ethernet(0x52, &(0x7f0000000000)={@multicast, @multicast, @val={@void}, {@ipv4={0x800, @generic={{0x10, 0x4, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, @loopback, @dev, {[@ssrr={0x89, 0x17, 0x0, [@local, @local, @multicast1, @remote, @local]}, @end, @lsrr={0x83, 0x3}, @cipso={0x86, 0xe, 0x0, [{0x0, 0x5, '#eV'}, {0x0, 0x3, "8f"}]}]}}}}}}, 0x0) 23:56:45 executing program 1: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$tipc(&(0x7f0000000040), 0xffffffffffffffff) sendmsg$TIPC_CMD_SET_NODE_ADDR(r0, &(0x7f0000000380)={0x0, 0x0, &(0x7f0000000340)={&(0x7f0000000280)={0x24, r1, 0xc15, 0x0, 0x0, {{0x1, 0x0, 0x500}, {}, {0x8}}}, 0x24}}, 0x0) 23:56:45 executing program 5: r0 = socket$inet_udplite(0x2, 0x2, 0x88) ioctl$ifreq_SIOCGIFINDEX_team(r0, 0x8935, 0x0) 23:56:45 executing program 0: r0 = socket$inet_udplite(0x2, 0x2, 0x88) r1 = socket$nl_netfilter(0x10, 0x3, 0xc) ioctl$ifreq_SIOCGIFINDEX_wireguard(r1, 0x8933, &(0x7f0000000240)={'wg2\x00', 0x0}) sendmmsg$inet(r0, &(0x7f0000003540)=[{{&(0x7f0000000000)={0x2, 0x4e23, @initdev={0xac, 0x1e, 0x0, 0x0}}, 0x10, 0x0, 0x0, &(0x7f00000001c0)=[@ip_pktinfo={{0x1c, 0x0, 0x8, {r2, @local, @initdev={0xac, 0x1e, 0x0, 0x0}}}}], 0x20}}, {{&(0x7f0000000280)={0x2, 0x4e20, @initdev={0xac, 0x1e, 0x0, 0x0}}, 0x10, 0x0, 0x0, &(0x7f0000001840)=[@ip_pktinfo={{0x1c, 0x0, 0x8, {0x0, @empty, @remote}}}], 0x20}}], 0x2, 0x0) 23:56:45 executing program 2: r0 = socket$unix(0x2, 0x3, 0x2) connect$unix(r0, &(0x7f0000000100)=@file={0x0, './file0\x00'}, 0x6e)