ok github.com/google/syzkaller/dashboard/app 0.805s ? github.com/google/syzkaller/dashboard/dashapi [no test files] ok github.com/google/syzkaller/executor 1.519s ok github.com/google/syzkaller/pkg/ast 2.545s ok github.com/google/syzkaller/pkg/bisect 49.636s ok github.com/google/syzkaller/pkg/build 0.127s ? github.com/google/syzkaller/pkg/cmdprof [no test files] ok github.com/google/syzkaller/pkg/compiler 13.621s ok github.com/google/syzkaller/pkg/config (cached) ok github.com/google/syzkaller/pkg/cover (cached) --- FAIL: TestGenerate (5.96s) --- FAIL: TestGenerate/freebsd/386 (1.39s) csource_test.go:67: seed=1607637606941358069 --- FAIL: TestGenerate/freebsd/386/0 (1.37s) csource_test.go:123: opts: {Threaded:false Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { if (setsid() == -1) exit(1); struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_one(void) { intptr_t res = 0; *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); do_sandbox_none(); return 0; } :195:10: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor512857588 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/11 (1.40s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:true Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static __thread int skip_segv; static __thread jmp_buf segv_env; static void segv_handler(int sig, siginfo_t* info, void* ctx) { uintptr_t addr = (uintptr_t)info->si_addr; const uintptr_t prog_start = 1 << 20; const uintptr_t prog_end = 100 << 20; int skip = __atomic_load_n(&skip_segv, __ATOMIC_RELAXED) != 0; int valid = addr < prog_start || addr > prog_end; if (sig == SIGBUS) { valid = 1; } if (skip && valid) { _longjmp(segv_env, 1); } exit(sig); } static void install_segv_handler(void) { struct sigaction sa; memset(&sa, 0, sizeof(sa)); sa.sa_sigaction = segv_handler; sa.sa_flags = SA_NODEFER | SA_SIGINFO; sigaction(SIGSEGV, &sa, NULL); sigaction(SIGBUS, &sa, NULL); } #define NONFAILING(...) ({ int ok = 1; __atomic_fetch_add(&skip_segv, 1, __ATOMIC_SEQ_CST); if (_setjmp(segv_env) == 0) { __VA_ARGS__; } else ok = 0; __atomic_fetch_sub(&skip_segv, 1, __ATOMIC_SEQ_CST); ok; }) static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: NONFAILING(*(uint32_t*)0x10000000 = 0); NONFAILING(*(uint32_t*)0x10000004 = 0x2958); syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: NONFAILING(memcpy((void*)0x10000040, "./file0\000", 8)); NONFAILING(memcpy((void*)0x10000080, "#*\000", 3)); NONFAILING(memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15)); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: NONFAILING(*(uint64_t*)0x10000140 = 0x7fff); syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: NONFAILING(memcpy((void*)0x10000180, "./file0\000", 8)); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: NONFAILING(memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096)); NONFAILING(*(uint8_t*)0x100011c0 = 0xa); NONFAILING(*(uint8_t*)0x100011c1 = 0); NONFAILING(memcpy((void*)0x100011c2, "./file0\000", 8)); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { NONFAILING(r[1] = *(uint32_t*)0x10001200); NONFAILING(r[2] = *(uint32_t*)0x10001204); } break; case 7: NONFAILING(*(uint32_t*)0x10001280 = 0); NONFAILING(*(uint32_t*)0x10001284 = 0x10001240); NONFAILING(*(uint32_t*)0x100012c0 = 8); syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: NONFAILING(*(uint16_t*)0x100013c0 = 7); NONFAILING(*(uint16_t*)0x100013c2 = 0x800); NONFAILING(*(uint16_t*)0x100013c4 = 0x1210); NONFAILING(*(uint32_t*)0x100013c8 = 9); NONFAILING(*(uint32_t*)0x100013cc = 5); NONFAILING(*(uint32_t*)0x100013d0 = 0xf0a2); NONFAILING(*(uint32_t*)0x100013d4 = 0xff); NONFAILING(*(uint32_t*)0x100013d8 = 5); NONFAILING(*(uint32_t*)0x100013dc = 0); syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: NONFAILING(memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6)); NONFAILING(*(uint8_t*)0x10000006 = 0); NONFAILING(*(uint8_t*)0x10000007 = 0); NONFAILING(*(uint8_t*)0x10000008 = 0); NONFAILING(*(uint8_t*)0x10000009 = 0); NONFAILING(*(uint8_t*)0x1000000a = 0); NONFAILING(*(uint8_t*)0x1000000b = 0); NONFAILING(*(uint16_t*)0x1000000c = htobe16(0x8100)); NONFAILING(STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3)); NONFAILING(STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1)); NONFAILING(STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12)); NONFAILING(*(uint16_t*)0x10000010 = htobe16(0x86dd)); NONFAILING(STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4)); NONFAILING(STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4)); NONFAILING(memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3)); NONFAILING(*(uint16_t*)0x10000016 = htobe16(0x1259)); NONFAILING(*(uint8_t*)0x10000018 = 0); NONFAILING(*(uint8_t*)0x10000019 = 0); NONFAILING(*(uint64_t*)0x1000001a = htobe64(0)); NONFAILING(*(uint64_t*)0x10000022 = htobe64(1)); NONFAILING(memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16)); NONFAILING(*(uint8_t*)0x1000003a = 0x34); NONFAILING(*(uint8_t*)0x1000003b = 5); NONFAILING(*(uint8_t*)0x1000003c = 0); NONFAILING(*(uint8_t*)0x1000003d = 0); NONFAILING(*(uint8_t*)0x1000003e = 0); NONFAILING(*(uint8_t*)0x1000003f = 0); NONFAILING(*(uint8_t*)0x10000040 = 0); NONFAILING(*(uint8_t*)0x10000041 = 0); NONFAILING(*(uint8_t*)0x10000042 = 4); NONFAILING(*(uint8_t*)0x10000043 = 1); NONFAILING(*(uint8_t*)0x10000044 = 2); NONFAILING(*(uint8_t*)0x10000045 = 4); NONFAILING(*(uint8_t*)0x10000046 = 0x25); NONFAILING(memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37)); NONFAILING(*(uint8_t*)0x1000006c = 1); NONFAILING(*(uint8_t*)0x1000006d = 3); NONFAILING(*(uint8_t*)0x1000006e = 0); NONFAILING(*(uint8_t*)0x1000006f = 0); NONFAILING(*(uint8_t*)0x10000070 = 0); NONFAILING(*(uint8_t*)0x10000072 = 0x22); NONFAILING(*(uint8_t*)0x10000073 = 0x1d); NONFAILING(*(uint8_t*)0x10000074 = 0); NONFAILING(*(uint8_t*)0x10000075 = 0); NONFAILING(*(uint8_t*)0x10000076 = 0); NONFAILING(*(uint8_t*)0x10000077 = 0); NONFAILING(*(uint8_t*)0x10000078 = 0); NONFAILING(*(uint8_t*)0x10000079 = 0); NONFAILING(*(uint8_t*)0x1000007a = 0x1f); NONFAILING(*(uint8_t*)0x1000007b = 0xd6); NONFAILING(memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214)); NONFAILING(*(uint8_t*)0x10000152 = 3); NONFAILING(*(uint8_t*)0x10000153 = 0x14); NONFAILING(memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20)); NONFAILING(*(uint8_t*)0x1000016a = 0x52); NONFAILING(*(uint8_t*)0x1000016b = 5); NONFAILING(*(uint8_t*)0x1000016c = 0); NONFAILING(*(uint8_t*)0x1000016d = 0); NONFAILING(*(uint8_t*)0x1000016e = 0); NONFAILING(*(uint8_t*)0x1000016f = 0); NONFAILING(*(uint8_t*)0x10000170 = 0); NONFAILING(*(uint8_t*)0x10000171 = 0); NONFAILING(*(uint8_t*)0x10000172 = 4); NONFAILING(*(uint8_t*)0x10000173 = 1); NONFAILING(*(uint8_t*)0x10000174 = 0x7f); NONFAILING(*(uint8_t*)0x10000175 = 7); NONFAILING(*(uint8_t*)0x10000176 = 0x1c); NONFAILING(memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28)); NONFAILING(*(uint8_t*)0x10000193 = 0xef); NONFAILING(*(uint8_t*)0x10000194 = 0); NONFAILING(memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096)); NONFAILING(*(uint8_t*)0x10001195 = 0); NONFAILING(*(uint8_t*)0x10001196 = 1); NONFAILING(*(uint8_t*)0x10001197 = 0); NONFAILING(*(uint8_t*)0x10001198 = 0xc2); NONFAILING(*(uint8_t*)0x10001199 = 4); NONFAILING(*(uint32_t*)0x1000119a = htobe32(0x1000)); NONFAILING(memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241)); break; case 11: NONFAILING(memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60)); NONFAILING(syz_execute_func(0x100012c0)); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); install_segv_handler(); use_temporary_dir(); do_sandbox_none(); return 0; } :382:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor720284867 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/14 (1.85s) csource_test.go:123: opts: {Threaded:true Collide:true Repeat:true RepeatTimes:0 Procs:2 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:true Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static unsigned long long procid; static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { } int i, call, thread; int collide = 0; again: for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); if (collide && (call % 2) == 0) break; event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); if (!collide) { collide = 1; goto again; } } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); for (procid = 0; procid < 2; procid++) { if (fork() == 0) { use_temporary_dir(); do_sandbox_none(); } } sleep(1000000); return 0; } :362:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor859938118 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/13 (1.90s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:false Trace:true} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { fprintf(stderr, "### start\n"); int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; res = syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); fprintf(stderr, "### call=0 errno=%u\n", res == -1 ? errno : 0); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); res = syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); fprintf(stderr, "### call=1 errno=%u\n", res == -1 ? errno : 0); break; case 2: res = syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); fprintf(stderr, "### call=2 errno=%u\n", res == -1 ? errno : 0); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; res = syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); fprintf(stderr, "### call=3 errno=%u\n", res == -1 ? errno : 0); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); fprintf(stderr, "### call=4 errno=%u\n", res == -1 ? errno : 0); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); res = syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); fprintf(stderr, "### call=5 errno=%u\n", res == -1 ? errno : 0); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); fprintf(stderr, "### call=6 errno=%u\n", res == -1 ? errno : 0); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; res = syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); fprintf(stderr, "### call=7 errno=%u\n", res == -1 ? errno : 0); break; case 8: res = syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); fprintf(stderr, "### call=8 errno=%u\n", res == -1 ? errno : 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; res = syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); fprintf(stderr, "### call=9 errno=%u\n", res == -1 ? errno : 0); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); (void)res; break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); res = -1; errno = EFAULT; res = syz_execute_func(0x100012c0); fprintf(stderr, "### call=11 errno=%u\n", res == -1 ? errno : 0); break; case 12: (void)res; break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); do_sandbox_none(); return 0; } :359:17: error: use of undeclared identifier 'SYS_close_range' res = syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor838096877 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/8 (2.03s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:setuid Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int wait_for_loop(int pid) { if (pid < 0) exit(1); int status = 0; while (waitpid(-1, &status, WUNTRACED) != pid) { } return WEXITSTATUS(status); } static int do_sandbox_setuid(void) { int pid = fork(); if (pid != 0) return wait_for_loop(pid); sandbox_common(); char pwbuf[1024]; struct passwd *pw, pwres; if (getpwnam_r("nobody", &pwres, pwbuf, sizeof(pwbuf), &pw) != 0 || !pw) exit(1); if (setgroups(0, NULL)) exit(1); if (setgid(pw->pw_gid)) exit(1); if (setuid(pw->pw_uid)) exit(1); loop(); exit(1); } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); do_sandbox_setuid(); return 0; } :373:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor551144615 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/4 (1.74s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:10 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (; iter < 10; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); do_sandbox_none(); return 0; } :350:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor070548072 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/12 (2.23s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:true Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { if (write(1, "executing program\n", sizeof("executing program\n") - 1)) { } int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); do_sandbox_none(); return 0; } :352:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor248697306 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/10 (2.29s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:false HandleSegv:false Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); do_sandbox_none(); return 0; } :297:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor438317425 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/3 (1.25s) csource_test.go:121: --- FAIL: TestGenerate/freebsd/386/7 (2.38s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox: Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:false NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); loop(); return 0; } :323:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor770714140 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/9 (2.53s) csource_test.go:123: opts: {Threaded:true Collide:false Repeat:true RepeatTimes:0 Procs:0 Sandbox:none Fault:false FaultCall:0 FaultNth:0 Leak:false NetInjection:true NetDevices:false NetReset:false Cgroups:false BinfmtMisc:false CloseFDs:false KCSAN:false DevlinkPCI:false USB:false VhciInjection:false Wifi:false Sysctl:false UseTmpDir:true HandleSegv:false Repro:false Trace:false} program: setsockopt$inet6_sctp_SCTP_RECONFIG_SUPPORTED(0xffffffffffffffff, 0x84, 0x29, &(0x7f0000000000)={0x0, 0x2958}, 0x8) extattr_set_file(&(0x7f0000000040)='./file0\x00', 0x1, &(0x7f0000000080)='#*\x00', &(0x7f00000000c0)="03179b69b5efce595f2db1d97ec5b0", 0xf) cpuset_getid(0x1, 0x4, 0x7, &(0x7f0000000100)) cpuset_setaffinity(0x0, 0x7, 0x800100000, 0x8, &(0x7f0000000140)={[0x7fff]}) r0 = open$dir(&(0x7f0000000180)='./file0\x00', 0x400, 0x4) sendto$unix(0xffffffffffffffff, &(0x7f00000001c0)="30f7d0fb4a2c41c76f593068b2c40ae357e4711407f5f8dbf432a8afb67c7a7b01a20377c8bf3600294f70cb9dd862e5e2e26d06c98dc435ccf0488a1837f0a13441f6be1b8abbf5fc4f3570521233f5be9c187863218f1493a0bef38934fca598e29d495d2d30887e38b57add19970dcaf6777fb3c34bd117d0c97340c9a888719687dffc6233eed1a3fb27ce34617ff11efe19377281c00e67b06bd10c10ce0b812b41642b4165c8e7112d8ebffbe5a294242da4f1981b78e0a23844441888c2f64e88679b4a6bc491f8d798d9ce19da4fabbc72414ba75605b46bb5b4d01013d0104b789c69b2ef0954636cca86f16f6c646cdefdf0a97b7c15fb4ee7bd8b1267580958999e50642228f615e821b4e54ac2e7a56df822bf84e9d8432c3383c31c1b7b79b04a4f74265d0dbe3c6c9986dce11ad4f836a56c97b21f7e7f72c5ad28b32b854b37a060d4458eb1dd835adbfc06676e66e7e833618e103e8d6379819099ea820e7b6d1126dee9c4f7d581d26ca4aae2d7de1c37ed2a8d7fb2dbf4fb1a64000438de23371c1d58f804ade8978f7bd40b2eefa8f16f8ea893372af7b92008f4a0563f89cf0ec36987b17f0fe185f397cef7acc3d65e1c6f55754d414573404819a36feb0128769c54414f2efe07652e479bdfc62591c193556a1b1904e4de6f8604379b38760b72cb678445af346fd1d776db9c2991eb24c082f8d8374f78cbb3010df4c017e5cbea1c401cb9c440d7ce0973c0085da96ed41acfc4b667bb311a5d78ec753889509fedfb9f78f7096373c8c5296015dde982a4c28614bcfeb6b9b999fb1438402e8ca43c5d6b3399336aa6fd52ff78f54171732bb351abf75194b02d574264c940d44871bb5ef2a5a1df7aea70a0b9d694663e72d623d6e46d6918d8076ca8b8c866e197bdd668212d8dc86daa137fa7358fe9a5e2298d4d975fc623ecf727dfe1bbc72ce993d1986b16306ad3298e024d9e835717f27ece51c5ff802bfc8cd9fa89ed831837bdf2f40c647487bbcb9cb766fdcac1c486e761907b8ab16921b98fc8b6ea0c3802fd15e208c44502e8e2dc7fdb3690c7da75d3fc18dca3843abe7ae3bc689a6d5b7d1cbd4c1c85d4634f291003a50313074ca8721875385200344148a334a91461232e726504cff12aa33f0570fd0f6f89428200dd7ab433b57949b3089631f27929ddb3a962157829338f1549304fc4c43cf2cd08f66174286e0b2a922711fe14929cbe8cd2ecdb2b3c0d6d07cb34d7796d1f512ac95e96fdc695d1d2d8f9b305f0b866a0be459f1fc73747d8a745e58994a778c569cd7e580e5813134381de2ff5bcfd47af564d86371e6f1f40ad7a2dbc1a7a929d7bfa0778c64473052a849729b129a31cb718271a58ac65e17e339cbdf72cea87aca4d92394bb14e56150405af38f80237b20f8ca4dc7f3ada32c40f79e6b22919454c6526a8efeeb1815ba7244caa8dcb201a1aa14ef31fdad0dada396bf2c371eae4a00a46b5f31a30b7936944452df9ac9139489ac63bd388df2d1aa32a9013d45fc9c6ea789b5ad43df5a19f8dc7aa3461ed93acbabe1cd816a45dddec09d232c5ef51eac5666e913059b0bfb41c9ffbe1e964325f957dd79b946adfa37794825657cdcfa69a7442ce0dde1e717532a7474e649399359ecb5b1bbaa72ff9bd27de04e53db843613797fbdff4d75176946749a7fcc3ec7952cd680896d2b9ef2ba16c70b67e0da9fa01fce9c9564023d35d09cde04b7492800690492ca01ab8960d0ef803a4422b8e754c94bbf99959b2b4b0eb37e60f60fef9ed7b9bab36c1ba200da8514f3dc4175c5ac0ecfd6f6bb235614f1eee516dd97e40b37444bd3d83fda9b33017349356a00a2b0fb34b4f3ea4b0266a23621f629f3dbc710ce0348bb83a35c409770f53a8b08b4b3f7ef042528d91b4add1a7c87b9b25732d47fffde0599bdf634464e28fe870229fb4672867c880521515979f160ad0e2371791b00f25fdfe659a36b3f9de8b912ff066a72c8a4814cf87817cd6f63debf62cc87dfedbd9a52cfc54c66df8f6f54d41414fcb170639c0bd3fad7b5718a0844d78c91b47fc412f450c5a9bf723f164018791ef72434133315b1180e3e20c65ec3993bfc656db0ddb0fc2ef1216b3388464ba927083659e18a08417cfc4210296713f43aa421c7c1e1d53ee45bd5006909baa1da1e49a555a1566e32e026a16d52f0c29b1c5864f30f9a75c09635db6103ebff5a334898e3f17cd128f7ce9a83e058cc0de0bd7b8797713684e66a48334a234185d06a50ee3b9d36322a74d6448c43ca7892671a35f53037fafd7d000e8780a0891988eef4e153fccc95472f611af5bd8621f36553f565f327f5f160030c432f947c0c42a392315e11471a63133c4c670f374b0b02a5bcf728895bba390612a5b9288946339d46b6abbc6e30f1f74172f1d01cba02f5e70073c06cccd24395ab28f7a5be69d2c97ff06c6d778f883dde9ad31f9dbb774192f6ef26371a89370e21459e0009c966aee99b936ace5bc42bf77ae4bb8ff40388ff7c4ab82892ad888fb970608e570eabbf6ec8019f5cc4d168e6862a7ff441763cce758ba3ab87c05f792110ae1c10037953603687ea63bceeda6d8dbb9bd9d19a73b7682f1f0ca4dbc15e1e719687100e3ea01db54eed241b0be45e2c2fb062e240f94bccffaf9ade69804c30138c14433142c9d3e6c75b3bbd1bfb37294c549e7c917be3540440bfedc32a864a1e58ceee05bf644bc8c6d2f1bda3b399ccbd66c5fa1252176274402a8129257e2d75aa80bb303939e4173f761ebd8c82c6453eade56977647ebdfaf7f16e137ce648ad82e4de46ed44880a07deff62d4116667a97f6c7dfafb06831c201716d345b0f5d4af8804a16825cbbc976ec55530453d59ef687fe258769b5a17f08f8accb9f98a848e8fb524620854cb65b15301ce1eff840819187abcf59df9b940300d4fb55d94d44e3de68426cc29fec1ab4a0225e586e87dd2938ac525334e17c4dd55cddd84e1cf43134648fd881f0047d56b6be33f0a276fefc74264b13a00839de24308e1679dbdc24ab637ce735ccb884daa780da3ccbfe6218e8456ffedb4fb754b6d17145c3c2112207c684bc1f781a33f3937380a878c4d973c41abde50cfffe8db9b3f9f96e2da07a845b71e55b627732880c9b8bad96e31c764139fdf7f92da85dc46846d2104dfee5c4563796f0d3d9fe3e7ea8a1cd905174a8291933222ae820c93a9ca620a3dcf2722bdd2ca6e39518fe98e1747214d5502cb0b0c0cdb01ab89e160c0554a46b81419e5768a3f7a665656d225604c59ad1234377ad3f13a8b76149057f7148f143bb53081c3033fdb95af5d854b08c9c4cd33c82759349db94f554442fe8a05a9e0c3431b4cdcd11895ad737dcba200b95e16760ef295da33e4de66ec4058adc88f302e41fadab1b9938512257d22c3d7487c8f6dcf02a00baf948e2f7cd4fcfc11119ac78596e903d6463369e0fdd37f9adae249088fe1e057ec87f7aba8597b9b6edb8fb2b13fe126683f4e30c14487f575caab6af959b5f154b08016152b4dc39c3cec341e0f6c01c09b89aee0f1a218e29081d13efc435f4733b250efcac2bafd1b5e5199e8a9955faa0b3fa335bff84da1eb4774eef582c822732e86986c138e4ed1514b88e7150146de7e4f4138262896cbbe38c25e449c4416ad6b5438ad750949e13a9abaf8f40f8b5d7b31b02c51887632b8d8ef639950c6ab17c461339389f86c978d8d22ce389cb89ae51d996f4d10d4466656a6256297dfd3f6cb1e0f6a78dd10945f3bfef7e1a835f5a782cf613c91af37468de2c3f8a9a3efedd60927da6ff4e726f32d6721ba42fa304b29d6781c53736de4a68a47af29fa5c9e9b21b7b5737320ea7e5b77beee0d0ab59bf27972f6ba2048c4260299e7f913fb514053f815716658bd1396a2a499814cb15037617f8b27805dfcbd9bcf5c5aeddada11251077337c69cec000e82b0c6e994dea5d397584e834f58de6464b7a7617a35712ba9c6ebe3b83fbe1604efc7fb36ecd642cd0652e9a6e67e25d3e9d7e89a106d9fcd8a5462f2661efb3839eba3f093c6c8fbda64da1be71969a4a58d2ea2353e46c0a67d8f1b098e7f86dc72c3ea096d36e43176f828f8de6ff52fa377fe6d7504facbdad794ac3e439810900568a3e69189c0a73cc55eef6384a305cb251243fd18accf5eb680e007368bc219e30810e0dae377c386f65acc0ebdbf38e442354ee6b091a582355eaafe2587215aa144d8fa758fe516b9ccf6cb79c3be4dcec5323af4da65be9a3245dbe41908bbf0f55992020fbe7ed906b9ea1ab93e778d5cd4a83626db4c6ddba6f4ef734d023e2a106f0cf2003607a685a63c67b4a29009c9d1b9bed2882264e2acd40ef41c30d506c708dc26fbb99110cad1298bc9fa2eb7498d225ca231c47d40056800e0b7344d63f37ec7ae17750ba753d9bd59d5ad654385205f8acfd14cc5942a574d56bc7d2628c30fa65df1f7f6480557b10f1e15c555918b5610edd28377923cd4aa51012adf159f190f82f38712f7e0a9f6b7903d294ff8358b36927e87682e52884dd18c0ed6646b11326c5d59c50aa979d189b9ad005b4d528ff91dd854b409f1969bb44122e7df00329e17b0168dd8d8724e2eee256f53213d2c513396c9c206e9b8b693c3069539347134a944ab8652e043cc0144d6208a8d266ceecd4695f952941b86808f8fc7606b5cbed935588d8561426db4e7b7a1f69756519626ec39bf656be645f132a1c0e483ec9923094bc23c2d2c94bd6055d3eaa8dfac4e9f40122779b19302287bfeba42eee315a1f3083bc0abba1bb3ae25f7cc7e4d7e9c0fb934bd82187fb8592445f46d05a48cbe826644020c7b4f6463f6d7ce433c448741eb2c284f3861c446c1bc5b502c5d424a1e8b7f420805280abb2d72b6e87460cfa36aa1f35bdf4ef4db47fbb61a5380df1e78099df17de980c938c01dbf0406b0b5cb20a539541bb27528c15043218ef681678f18b7940d53cabea7c58f21bf79fc1ec62aface4284c1cf670ecbdc1603f26585f2798785407b0d06b337b39733bb3733c4cbdc7b568be41c17b188db483944ad2c02b4de626e90e3e023d69d568fd6d252db9184a8b2112a0fe3e5a16bfa5a464bf49b64f79cc89ce545140e95543e3cdb0386771fcdf5521e13cbfc24ca6d909cef7ff422e399c63be543dc037748b2abf0236a33cc342432e00e95c98aee6c54a0a22d4bd12a036111d561c5496f20390834e0853ed8015a0d36733e9b784e74e17a264186c7245c30e3819fae120a46f02f8a33b21f072010be21d603389af18e1bb09bba7f7252f361100df5374b09345f6fe187114e27cebe222c761b5cabfb4a31ee45fcbafe24fd728011607d2e31b72700daeda6987f85d94fa7255ece5085f4d503593785615429e780014bea5d9ab9f19dc4c2116ca18520ed68479f021e5c74646438d021a31f76fc8a77950b12f77c7a2ea761b90c48eb756e0c31b5fcdea109f5a7e3d1eadf6a129e2d4ce13ddfe63c361d486b97f44261558302fb9e039d7cacc298a40d1e803040ee101ca6d05f7fa262fb8462d93d55d50d9a63a219f19a1dda5b1f19cdfb2561346d87526301cfbdb3266a5d979de275f3dd995e08cb3e1e744fe94d48aab84d0b409d5d68e09475aa3a0e33fbcd5059dc160a9e4581f0205c75bc1067668395510ab9d7400690177516efb1f376420743b658a8b366c955547a7c56001d4", 0x1000, 0x5, &(0x7f00000011c0)=@file={0xa, 0x0, './file0\x00'}, 0xa) socketpair(0x2, 0x20000000, 0x9, &(0x7f0000001200)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$inet_sctp_SCTP_GET_PEER_ADDRESSES(r2, 0x84, 0x8003, &(0x7f0000001280)={0x0, &(0x7f0000001240)=[@in={0x10, 0x2, 0xffffffffffffffff, @local}, @in6={0x1c, 0x1c, 0xffffffffffffffff, 0x0, @loopback}]}, &(0x7f00000012c0)=0x8) close_range(r1, r0, 0x0) setsockopt$inet6_sctp_SCTP_DEFAULT_SEND_PARAM(0xffffffffffffffff, 0x84, 0xb, &(0x7f00000013c0)={0x7, 0x800, 0x1210, 0x9, 0x5, 0xf0a2, 0xff, 0x5}, 0x20) syz_emit_ethernet(0x1293, &(0x7f0000000000)={@random="6c221b959142", @empty, [{[], {0x8100, 0x1, 0x1, 0x4}}], {@ipv6={0x86dd, {0x4, 0x6, "2fbdc1", 0x1259, 0x0, 0x0, @loopback, @rand_addr="be562130848d9fab091805c8a5aa19f8", {[@hopopts={0x34, 0x5, [], [@enc_lim={0x4, 0x1, 0x2}, @generic={0x4, 0x25, "4fff9f1ace7232120938886fc41773cd562304beb392df23ecaaf51b0ef949b8587134bff3"}, @padn={0x1, 0x3, [0x0, 0x0, 0x0]}]}, @hopopts={0x22, 0x1d, [], [@generic={0x1f, 0xd6, "3f1257db54d3eb658c5454aa6d65e3b254f9f5202b2f8f0186faa92d39cc828a2847885b13f479fd86638ba08bb351c16ce5823e9796430bb015ba9d4e6401931afc1ba53bc5cb82d6a5909f98d04dd84e9a7f665c7e9df7ed31b82ee318e581c0fb54465f68113c927c1442c7d4beb4903ba68f61740f641d24c7277f3cc57936d97b54ba31b1d3ec71069edd60a9954d1ba97ffa9103aa85672c88e56c8e27635f7b4fea03ebb54415f225c9577adea738328d0952a659253e668e6a190e0fffefd5635f25727ad4813bd696e53666c2f907f82565"}, @generic={0x3, 0x14, "41fe8f2dee3b9e2e483ef69b2d94fd9a9f4045c0"}]}, @dstopts={0x52, 0x205, [], [@enc_lim={0x4, 0x1, 0x7f}, @generic={0x7, 0x1c, "69a674f7f2be240ea4f8d945dab39d5b49539ee1650047e2654db4cc"}, @generic={0xef, 0x1000, "c502ee207e8f2f2074f54d876c0bdc7c84c38b6b82b3f7f60b1054c5bb3e0dd3ea822378f4450d73401e962769313a798f7d4fa83f8f9df57eb224ef87258db255cf18289e23669d958dc0fd73532374a4e1d888ec8465a96a0e1c4cd757b9b806a8e82b541ce48b42960177a601779e667ab09b5d62e67e787e20a30e7198cf4d513d5b92f4cb0f17bfe35096bae01c37a072f7348075a5fea824a7fd0d74dd1badfd15371842867bbb03bd57fece951b93f69104d5eb042dc1aa28af0a2568d9e0fc36f71ebf45bd77fbb7903d0a3ea17cac4ec3d4b167e011c9285b28b884229b4af003f0486e61929a07a453b654712fc15a2079a3f8bbfa6ea29e8180ceba147856ec55b92733bd344b46fff5c14ba426daca73aa3e19beada6f8a0cbd0bd953f385b5b90a3c67a6a8523366859acc1c235d0cf99e05fa5aaeb7c139ea05d41d2489d60bacd8580391e99b45e5a35e0f85fb0f9375a179214238913dfd7c5664ebd0a2b1bfced76bf320675a61eb999c3e447fa58aa56c56da708459947ec3fc84b1bc4bf651c706c515c3c55b1b5cf1139afd954342153516064d881b4dbec30ae9ec3e1e9b462c6496e248db1a394e3d6908bd374374ea874c3f6dc2e3eb0e0123b84cf7c08d747115438f092f600435bb14708c33173bc11aab50661b98023e58150dd040e3a37088fea92d293329a39c5674f6ee1db671b427aea9b8ad7f1bb61189f081d8befa7387695c1cc494266928b8302662a5962df439994019165310b74fd9ad7bd8c36b374aa615208ee1689eb18ad0c6cee6278e25a76fea59b0710846df42ab2448c507c5b8005aaf69f93017c043479a23455a76c245c240076efe019ab506519802f6590649a51d2d0700121270c413b7b70144890a1dd12b72a546e98c8ededd6d842be28c43ce708dab8ba3d174060f377eaefaa81cef7b05d1576e9c2e151c4b3884d2696b3741d32046d4cf8d1ae9ea028dd935a8bc038f37517160a38c64e763a9542a8ef4b3e75220248fb287b5683ec083ee3345bd6507c57208215c353cc8ad23d022b785865f7f5dcac33e1341603c7ad7f9047d25107edcb2ae498be1a1010052e8169f5904d1ccdcac8b39fb15dde6fa1c9803a8452d0417a61e2e9a0ea823b10aedf2805bcdcdeaca1e6e75f6cf9ccfc9cf8f206d25a7940a77392b62e37cba6c000bb81b37d28ef9955e20dd04b15957e01e2f44d28b0c269c4e8344a69b7c882ffcbea991e3369fe0b1220fb354efad9892d2c01a5e7a177c75fb1d96ef5516312e387c335cd3d73d869e977e21c6a9685856895863fbd515ff9a8d544258a792ea7a994708e7cd605dad89360128de4707e484d005ac2b804b5134646972d1d7007324b1f6ddb78dfce930f818181713a660334871fb86779d793d99dbe0df56e0bafa4b17873d375282c4d3fad2a33d9161b47e1aa3e727c5059a4b56a426367d85e257c2419d3595cb5f63f4fb50f94a57a5fc924a512da08d8a2f0d570e52431818d1502b437738c9fa74c3bbb34946178e3c1eb18e3a975d1f13f8cff97d5bd5956403b55a7c2b60da0cac2a3977b62d320bb9ab3de408d58a391185fd7e4936d784f8fda1bcca32ccedf6b482db40a3fe834f6f0f535bf86cb5c8757e9f0121944afb2548fd93f410b506c9bed6b2367f4b8607f81ff29e645f8e8c760351886e599bbb86086b4a115f9a0498bf01d88c33fc1f39556354069f7fa6360b5e18069750d9cfe3374c95cd7e87440d49a5ca0e4e75bc84eb811523846be697a151fbd719f5f185bf1c183831e8c04a5cb21268e735ac59829b17974d6609e500c1a8893d97bed101d7836370ff6029b5b4d753b865de021cf974a38e73e004d09c77da8c54d21695df5e0e0d40accbb74aed8ad9718788a3f1771e54e67338cfa596dbf6e1ffa17bf79989fbe1d466a27c547216b20ee66dcc71da5f9430d8d0baff0ee8662677ef2eb371233e1e01169e53ebac9f0bc056c8eae09f01a2855bac71cc6e097d7dd942c7f9859244fdbf6e574beef59c7228f6d78d7f62d9ba8edd6e41ca7f9d4640cf9315a8d66c8432a65af955c257c48baff0bcdc2234856dbb6a6f6a9bfffa8773075b8f1d4ed8ee1e326501684635de54e3752294c87235b5e916d215a3432382ff46fa3dd43eee2aaa6fd2ff0be1204c606a80e98baac4f5f92b40a49609f71bc118b02bad01d985a1be355917fa22464bfce652c660acea76ce317ff3cafb5df19ccba597967513d4f9c602dc7f9fc37939feec978d76b195f51216a8da1b68d561e0f82414aa8413a18fee09b4a71642e03e222851fc94c426b3b3e794a1bd3066c5a08d7b2076b781593993c705695db0c8218051193f7fa416f016448a413daeac525ae8acd9d8908dfc4404dae866b0c97f1f90d354d26af14961c7e2f2f373a7b8da8fd7c0e927fd0863a62bcaf8b49ba644b5bb0a3b53e6f77f1207488de7616f0d75396c4eb9de79ff4be2e428dfd0fdac400a72692d9a4a65da29ef09ea4ed16b7aa8b5017f1eda3595d187d28dc3604135b75c74461b68f7673b419c0a6f29989d834139f53a8a0a095dfdab40cef6270b29e01cf287f54c5f46c803ba843a60001666e8b543fe04df5c008175f8a23d38f870fafeefb7988b8bb7fbab12bf26f43f891a8d3ace603b75330012c7fadd24d6430d41493ecf1b9c3a89b3efae5bde06c3f88c9c81b6049e2660cedab5b56e07a84143d62b4029a653775af174ed47ac06ba59259e78ba35f16f92951f8b1a8e33b5df727d9dc00c747252a2ade5c20d37d6e91d002fcf9454dd4317e881ab4ac6cfc18e238042d4df4c2bf2a9a76b541ef5d7f2f2c7d5eae2392ce903f45921bb28acb34be7c88eaaedae7215eb6bbe51be481336cc9ed1016c894d188bea580706cbeebc20766574ad8b543fe473ec1255da08632d83172bfe683ca3bf0658fdb094912a74817c65593a6e0ddf05295c552e6ace2b1aa42a3d265f4caca5c60f7dcadae73138625b477bb3ccd12b6392e0cdedfba8c8d7fc128c94ae69fbea38a46b21c0c86747464bc03e750ca6ba77f132aa6138f161e8376016a61ef8c88d923a0c805cb1629fb32c64625c3a71ec921756a2aadfed1f8d663798f263f9420bdc7fce6894230b63408ab934259ea1e545cd8c2234d64f54b084caffd256d15e8aad0494d18cc4bb92f39553a222025828fb21fa85bc2290145d730ac09ac3c30cc8093752171880e57f33fc9132fa4ba698f740c2b0e55bb72d81b6bec080bcbf91850ebf81c475143217a863ab313ef3d452625c415e293931a8f5af8e17664cd1878534db95036fd73a28e86297a78f1e8076577595353a281a4dd9778279ef78c0a85509be047bf7bac7555ad77e9ca5108d02b034d91aebf5029877e7e8fc26e562d40a640671a63d4bed4d142deee53bca2664f2870ab655802686d77a7937e6b08fb965a2bb9a76b6255fa132d628015fb8b1e415abcea1ab44ab7cdb71ceef3e2687e8caa0256e8d21fd13cf369ae009edc7232e3b4b57ee0a78abf32e749c97ce7f5003345ed0a906964f5deb1c631932f7ed939658a9036b4a73463e544b4b90d9237d91893acab6c7552ce89b40b37d5386bb26050a5e8ad4f8d9be1436c75d3733480e650343b3e69769d9cfb15493045f179cfcb3c2e33a7af2cd175495372b9d8a1be2d90449be73ff593f995d601714b1fc63cb934a939b346adb065905026343b7501375fc2b35da8d26355f79566637519483a51f6c51a36d58c596e2775dc02d4ac068eeaaddb1e16f547879fff8dc3325553394eafdb8cf0959cd468bbe2ce518855aa972dbf5d547630164b9e68bf208472c8c24dd7c1dbd5939c204096fc978afcd0ee78c3ab96d77b806129a656f4e8f5a675aa17ef1076347412412e35cb0480ea88269ee9d8fbd8df9a6a6b029ea7dc9619438795a6b79147bc2ab09f808a4d38547ec8a9ce0ff2b38b05699b52a7baec3f8d3219cb703d4d678c6d735df392ffd2cba3ea73a466b9dac9bf3ccc964d5aa85452216de5482d167cff20b225065f4f58293fdef01ea5159cba1d79eeda99f1d7180b75276fb7488a7fa3130606cd644ef31dd622bc919fa6e2a613906d2467ce7f56c1224e4e13ddb8a79793cf750409b5577bfbb11d840a096f1d6407fe6f6111a8368e489441f0368a37d4e4d962c828cc74f8fb132ebc0e8450f566ed23beccb6ea5efb80b12ce6283accf9c7753a36a212e4a5bf9f6dd145bbe7b3844e6c08851aed04bb27a291c1b9c9a7c977b8880642cd189ac33ab2d99b2306e957ffce32684304d476f49625aa090931912c70e916bcb21d66fd856d8a9a3f98ef2235e598c2f25a3118af6bf23a7ad9bd7b819cc7cb0e19c0996f2128dcd43a8a92fe8b333d214eaedafd0529d726b7be9e3203e79e7978abefb565aa435bbb0684bb0e8392aa2b374d75d2b12699470e43a6a1c0815e44efb33cdff3b8efb31cf2e9d56042979005d326c8f648ccac8ede6b1b52d66c7f9405568772d4c2021cb43586cdc54f24d65cacc79dada8a2e6ae57a4a2cc6549068d0ffdc7f0088e13160fd67dda884c3a62f78485885429a181679f1a405590e715a10071751ef08d8f700c2f6b52cd357c70a6f1c2759e31298b1f7a6174a4bbb566c3170d02f5795344799cdea18156a5090362f1ce9d17175d22a899594f73dfb3b6a91cd1cc7f69ee4cbfaa58d25dfcf91cf8866a2e11b3ceccbc14435484d86fa454e7e0ef83d56a9112fc3f205aeecf3a25a9c65d60287bd6870c1dbcb81adc9bac066e3ffa4634d8bb78e635a25c8f35f0f87cb039cf2e8a1e75463631a1e9c7796b12d8d4415c7111fdcfc6d05c269ad386b8c27fc0dc5d7ac7fb7159c410f35e44a37400e0ffd9019b0383fb942509ac7933125a46f31477eb6a64c0917926b57747997afebacdcc1183add385302303cdbd6ddc0734e5f83a6b27f31c090b14f3acbcf721d828c2698e686e9fbc399440ea23fa42e7eb08e189d6d73eeb8e0bf9c1e5ff43d1c2aec3f6b594f1409d98fbe764bea220b97197f2cf3d652a59f8c8dff15ce4cd4780a3190b7c5908ee83a3e44707b50b00306569f8402f41b504ab0bb89b1a38e8bac1cf6af6169a286dfcb158a80cdbad5f2b96035b0cc86b5e2b921e5d2f5ae41a8be093b04f3f87a5b638ff6c6b304a946d954c3328ca19cf30906bd26fb4c64c10d0784fe00cdb02f445cf5455de243c20178f60407d4f77a7c042547e4c109b9c16aa4c56c93aca85fc611332e4e6787a13af72b1f9d04c08343a96165476a62217a2b236632b4c4fbf56dd20a07a4e2b557361106523dbf281da5fc6dc95278fca70fb19e50054e09f3a9a633c2afe2ee9236dc4262f0d574206d730c9b4b1570560338406893bb39ba79457e8748e130cfd43a4ee078ea189fa7acd789d93f9e42c3235e9b0e14cf28073c383e887d53400201d5a7963a19471d677c23a6c83329f74b1d633777a4a3de12639b34a2e658b205cdab1356ff22baced85778c00aceda9640f2a5c2cc9a935ba51037d74db53736406e9a37683b7695bb7eff5ed3ff3492d45c2a0395ea21ea03c71da8f645551be8561c2e3e4c9a5bfe7f1207c40717d2f7ba3f83d05216bd054d31cb858cfc429f1764038c5f6a8470b9f5f5fb0b60c02e6e9c9c8b86e09c4a072ecec5848439bfddd965e2893973a91b2771ef126cf87aa39aa94b5019a3b24575c230123350b0d4344f7559f1b993d3ec602b1e4b793cdd3a840"}, @pad1, @jumbo={0xc2, 0x4, 0x1000}]}], @generic="adaabb00824d16a64e24b48512c1e08373c7f2d54b0e6601aeb270d7ff20d7493c40fea38e08eaa24beb4552163ea2a0dc56efba4dc48eb4be63ca1bf65a0add603fe12c38604a80b3e8e87641e4f97d60f973ac1cd4b0cecca6f60f7ed0ea52d3be08f33b1e258e0302d1a6977f57ad7b53898d87be8a6d745be8545fe580238be2496eacf2f9bc5789f632aafa5a6bebe7f25d743b8cd5806d461cb7809c7e459ad9ce8b5c6250c6b46f5ffc4c081e03b0962c78383262d8929f0cf5abe4ded71cb61959348bddbe8bec82bc65a7285076ffd1dc2e7de9755eced28ead51664dd721e06ad6097fe64bbff373cd4d7aff"}}}}}) syz_execute_func(&(0x7f00000012c0)="2e660fde4f3fc4c2f929c9c4e1e95c47bfc4c3ddcf51b82566260f0fc697c4e29d0376000f943426c4e13555730a0fa447fb00c4c1337c900b000000") syz_extract_tcp_res(&(0x7f0000001300), 0x3fe0000, 0x40) csource_test.go:124: failed to build program: // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static unsigned long long procid; static void kill_and_wait(int pid, int* status) { kill(pid, SIGKILL); while (waitpid(-1, status, 0) != pid) { } } static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void use_temporary_dir(void) { char tmpdir_template[] = "./syzkaller.XXXXXX"; char* tmpdir = mkdtemp(tmpdir_template); if (!tmpdir) exit(1); if (chmod(tmpdir, 0777)) exit(1); if (chdir(tmpdir)) exit(1); } static void __attribute__((noinline)) remove_dir(const char* dir) { DIR* dp = opendir(dir); if (dp == NULL) { if (errno == EACCES) { if (rmdir(dir)) exit(1); return; } exit(1); } struct dirent* ep = 0; while ((ep = readdir(dp))) { if (strcmp(ep->d_name, ".") == 0 || strcmp(ep->d_name, "..") == 0) continue; char filename[FILENAME_MAX]; snprintf(filename, sizeof(filename), "%s/%s", dir, ep->d_name); struct stat st; if (lstat(filename, &st)) exit(1); if (S_ISDIR(st.st_mode)) { remove_dir(filename); continue; } if (unlink(filename)) exit(1); } closedir(dp); if (rmdir(dir)) exit(1); } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); int i = 0; for (; i < 100; i++) { if (pthread_create(&th, &attr, fn, arg) == 0) { pthread_attr_destroy(&attr); return; } if (errno == EAGAIN) { usleep(50); continue; } break; } exit(1); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define BITMASK(bf_off,bf_len) (((1ull << (bf_len)) - 1) << (bf_off)) #define STORE_BY_BITMASK(type,htobe,addr,val,bf_off,bf_len) *(type*)(addr) = htobe((htobe(*(type*)(addr)) & ~BITMASK((bf_off), (bf_len))) | (((type)(val) << (bf_off)) & BITMASK((bf_off), (bf_len)))) static int tunfd = -1; #define MAX_TUN 4 #define TUN_IFACE "tap%d" #define TUN_DEVICE "/dev/tap%d" #define LOCAL_MAC "aa:aa:aa:aa:aa:aa" #define REMOTE_MAC "aa:aa:aa:aa:aa:bb" #define LOCAL_IPV4 "172.20.%d.170" #define REMOTE_IPV4 "172.20.%d.187" #define LOCAL_IPV6 "fe80::%02hxaa" #define REMOTE_IPV6 "fe80::%02hxbb" static void vsnprintf_check(char* str, size_t size, const char* format, va_list args) { int rv = vsnprintf(str, size, format, args); if (rv < 0) exit(1); if ((size_t)rv >= size) exit(1); } static void snprintf_check(char* str, size_t size, const char* format, ...) { va_list args; va_start(args, format); vsnprintf_check(str, size, format, args); va_end(args); } #define COMMAND_MAX_LEN 128 #define PATH_PREFIX "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin " #define PATH_PREFIX_LEN (sizeof(PATH_PREFIX) - 1) static void execute_command(bool panic, const char* format, ...) { va_list args; va_start(args, format); char command[PATH_PREFIX_LEN + COMMAND_MAX_LEN]; memcpy(command, PATH_PREFIX, PATH_PREFIX_LEN); vsnprintf_check(command + PATH_PREFIX_LEN, COMMAND_MAX_LEN, format, args); va_end(args); int rv = system(command); if (rv) { if (panic) exit(1); } } static void initialize_tun(int tun_id) { if (tun_id < 0 || tun_id >= MAX_TUN) { exit(1); } char tun_device[sizeof(TUN_DEVICE)]; snprintf_check(tun_device, sizeof(tun_device), TUN_DEVICE, tun_id); char tun_iface[sizeof(TUN_IFACE)]; snprintf_check(tun_iface, sizeof(tun_iface), TUN_IFACE, tun_id); execute_command(0, "ifconfig %s destroy", tun_device); tunfd = open(tun_device, O_RDWR | O_NONBLOCK); if ((tunfd < 0) && (errno == ENOENT)) { execute_command(0, "kldload -q if_tap"); tunfd = open(tun_device, O_RDWR | O_NONBLOCK); } if (tunfd == -1) { printf("tun: can't open %s: errno=%d\n", tun_device, errno); return; } const int kTunFd = 240; if (dup2(tunfd, kTunFd) < 0) exit(1); close(tunfd); tunfd = kTunFd; char local_mac[sizeof(LOCAL_MAC)]; snprintf_check(local_mac, sizeof(local_mac), LOCAL_MAC); execute_command(1, "ifconfig %s ether %s", tun_iface, local_mac); char local_ipv4[sizeof(LOCAL_IPV4)]; snprintf_check(local_ipv4, sizeof(local_ipv4), LOCAL_IPV4, tun_id); execute_command(1, "ifconfig %s inet %s netmask 255.255.255.0", tun_iface, local_ipv4); char remote_mac[sizeof(REMOTE_MAC)]; char remote_ipv4[sizeof(REMOTE_IPV4)]; snprintf_check(remote_mac, sizeof(remote_mac), REMOTE_MAC); snprintf_check(remote_ipv4, sizeof(remote_ipv4), REMOTE_IPV4, tun_id); execute_command(0, "arp -s %s %s", remote_ipv4, remote_mac); char local_ipv6[sizeof(LOCAL_IPV6)]; snprintf_check(local_ipv6, sizeof(local_ipv6), LOCAL_IPV6, tun_id); execute_command(1, "ifconfig %s inet6 %s", tun_iface, local_ipv6); char remote_ipv6[sizeof(REMOTE_IPV6)]; snprintf_check(remote_ipv6, sizeof(remote_ipv6), REMOTE_IPV6, tun_id); execute_command(0, "ndp -s %s%%%s %s", remote_ipv6, tun_iface, remote_mac); } static long syz_emit_ethernet(volatile long a0, volatile long a1) { if (tunfd < 0) return (uintptr_t)-1; size_t length = a0; const char* data = (char*)a1; return write(tunfd, data, length); } static int read_tun(char* data, int size) { if (tunfd < 0) return -1; int rv = read(tunfd, data, size); if (rv < 0) { if (errno == EAGAIN) return -1; exit(1); } return rv; } struct tcp_resources { uint32_t seq; uint32_t ack; }; static long syz_extract_tcp_res(volatile long a0, volatile long a1, volatile long a2) { if (tunfd < 0) return (uintptr_t)-1; char data[1000]; int rv = read_tun(&data[0], sizeof(data)); if (rv == -1) return (uintptr_t)-1; size_t length = rv; if (length < sizeof(struct ether_header)) return (uintptr_t)-1; struct ether_header* ethhdr = (struct ether_header*)&data[0]; struct tcphdr* tcphdr = 0; if (ethhdr->ether_type == htons(ETHERTYPE_IP)) { if (length < sizeof(struct ether_header) + sizeof(struct ip)) return (uintptr_t)-1; struct ip* iphdr = (struct ip*)&data[sizeof(struct ether_header)]; if (iphdr->ip_p != IPPROTO_TCP) return (uintptr_t)-1; if (length < sizeof(struct ether_header) + iphdr->ip_hl * 4 + sizeof(struct tcphdr)) return (uintptr_t)-1; tcphdr = (struct tcphdr*)&data[sizeof(struct ether_header) + iphdr->ip_hl * 4]; } else { if (length < sizeof(struct ether_header) + sizeof(struct ip6_hdr)) return (uintptr_t)-1; struct ip6_hdr* ipv6hdr = (struct ip6_hdr*)&data[sizeof(struct ether_header)]; if (ipv6hdr->ip6_nxt != IPPROTO_TCP) return (uintptr_t)-1; if (length < sizeof(struct ether_header) + sizeof(struct ip6_hdr) + sizeof(struct tcphdr)) return (uintptr_t)-1; tcphdr = (struct tcphdr*)&data[sizeof(struct ether_header) + sizeof(struct ip6_hdr)]; } struct tcp_resources* res = (struct tcp_resources*)a0; res->seq = htonl(ntohl(tcphdr->th_seq) + (uint32_t)a1); res->ack = htonl(ntohl(tcphdr->th_ack) + (uint32_t)a2); return 0; } static void sandbox_common() { struct rlimit rlim; rlim.rlim_cur = rlim.rlim_max = 128 << 20; setrlimit(RLIMIT_AS, &rlim); rlim.rlim_cur = rlim.rlim_max = 8 << 20; setrlimit(RLIMIT_MEMLOCK, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_FSIZE, &rlim); rlim.rlim_cur = rlim.rlim_max = 1 << 20; setrlimit(RLIMIT_STACK, &rlim); rlim.rlim_cur = rlim.rlim_max = 0; setrlimit(RLIMIT_CORE, &rlim); rlim.rlim_cur = rlim.rlim_max = 256; setrlimit(RLIMIT_NOFILE, &rlim); } static void loop(); static int do_sandbox_none(void) { sandbox_common(); initialize_tun(procid); loop(); return 0; } static long syz_execute_func(volatile long text) { ((void (*)(void))(text))(); return 0; } struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void execute_one(void) { int i, call, thread; for (call = 0; call < 13; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); } static void execute_one(void); #define WAIT_FLAGS 0 static void loop(void) { int iter = 0; for (;; iter++) { char cwdbuf[32]; sprintf(cwdbuf, "./%d", iter); if (mkdir(cwdbuf, 0777)) exit(1); int pid = fork(); if (pid < 0) exit(1); if (pid == 0) { if (chdir(cwdbuf)) exit(1); execute_one(); exit(0); } int status = 0; uint64_t start = current_time_ms(); for (;;) { if (waitpid(-1, &status, WNOHANG | WAIT_FLAGS) == pid) break; sleep_ms(1); if (current_time_ms() - start < 5 * 1000) continue; kill_and_wait(pid, &status); break; } remove_dir(cwdbuf); } } uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0xffffffffffffffff}; void execute_call(int call) { intptr_t res = 0; switch (call) { case 0: *(uint32_t*)0x10000000 = 0; *(uint32_t*)0x10000004 = 0x2958; syscall(SYS_setsockopt, -1, 0x84, 0x29, 0x10000000, 8); break; case 1: memcpy((void*)0x10000040, "./file0\000", 8); memcpy((void*)0x10000080, "#*\000", 3); memcpy((void*)0x100000c0, "\x03\x17\x9b\x69\xb5\xef\xce\x59\x5f\x2d\xb1\xd9\x7e\xc5\xb0", 15); syscall(SYS_extattr_set_file, 0x10000040, 1, 0x10000080, 0x100000c0, 0xf); break; case 2: syscall(SYS_cpuset_getid, 1, 4, 7ull, 0x10000100); break; case 3: *(uint64_t*)0x10000140 = 0x7fff; syscall(SYS_cpuset_setaffinity, 0, 7, 0x800100000ull, 8, 0x10000140); break; case 4: memcpy((void*)0x10000180, "./file0\000", 8); res = syscall(SYS_open, 0x10000180, 0x400, 4); if (res != -1) r[0] = res; break; case 5: memcpy((void*)0x100001c0, "\x30\xf7\xd0\xfb\x4a\x2c\x41\xc7\x6f\x59\x30\x68\xb2\xc4\x0a\xe3\x57\xe4\x71\x14\x07\xf5\xf8\xdb\xf4\x32\xa8\xaf\xb6\x7c\x7a\x7b\x01\xa2\x03\x77\xc8\xbf\x36\x00\x29\x4f\x70\xcb\x9d\xd8\x62\xe5\xe2\xe2\x6d\x06\xc9\x8d\xc4\x35\xcc\xf0\x48\x8a\x18\x37\xf0\xa1\x34\x41\xf6\xbe\x1b\x8a\xbb\xf5\xfc\x4f\x35\x70\x52\x12\x33\xf5\xbe\x9c\x18\x78\x63\x21\x8f\x14\x93\xa0\xbe\xf3\x89\x34\xfc\xa5\x98\xe2\x9d\x49\x5d\x2d\x30\x88\x7e\x38\xb5\x7a\xdd\x19\x97\x0d\xca\xf6\x77\x7f\xb3\xc3\x4b\xd1\x17\xd0\xc9\x73\x40\xc9\xa8\x88\x71\x96\x87\xdf\xfc\x62\x33\xee\xd1\xa3\xfb\x27\xce\x34\x61\x7f\xf1\x1e\xfe\x19\x37\x72\x81\xc0\x0e\x67\xb0\x6b\xd1\x0c\x10\xce\x0b\x81\x2b\x41\x64\x2b\x41\x65\xc8\xe7\x11\x2d\x8e\xbf\xfb\xe5\xa2\x94\x24\x2d\xa4\xf1\x98\x1b\x78\xe0\xa2\x38\x44\x44\x18\x88\xc2\xf6\x4e\x88\x67\x9b\x4a\x6b\xc4\x91\xf8\xd7\x98\xd9\xce\x19\xda\x4f\xab\xbc\x72\x41\x4b\xa7\x56\x05\xb4\x6b\xb5\xb4\xd0\x10\x13\xd0\x10\x4b\x78\x9c\x69\xb2\xef\x09\x54\x63\x6c\xca\x86\xf1\x6f\x6c\x64\x6c\xde\xfd\xf0\xa9\x7b\x7c\x15\xfb\x4e\xe7\xbd\x8b\x12\x67\x58\x09\x58\x99\x9e\x50\x64\x22\x28\xf6\x15\xe8\x21\xb4\xe5\x4a\xc2\xe7\xa5\x6d\xf8\x22\xbf\x84\xe9\xd8\x43\x2c\x33\x83\xc3\x1c\x1b\x7b\x79\xb0\x4a\x4f\x74\x26\x5d\x0d\xbe\x3c\x6c\x99\x86\xdc\xe1\x1a\xd4\xf8\x36\xa5\x6c\x97\xb2\x1f\x7e\x7f\x72\xc5\xad\x28\xb3\x2b\x85\x4b\x37\xa0\x60\xd4\x45\x8e\xb1\xdd\x83\x5a\xdb\xfc\x06\x67\x6e\x66\xe7\xe8\x33\x61\x8e\x10\x3e\x8d\x63\x79\x81\x90\x99\xea\x82\x0e\x7b\x6d\x11\x26\xde\xe9\xc4\xf7\xd5\x81\xd2\x6c\xa4\xaa\xe2\xd7\xde\x1c\x37\xed\x2a\x8d\x7f\xb2\xdb\xf4\xfb\x1a\x64\x00\x04\x38\xde\x23\x37\x1c\x1d\x58\xf8\x04\xad\xe8\x97\x8f\x7b\xd4\x0b\x2e\xef\xa8\xf1\x6f\x8e\xa8\x93\x37\x2a\xf7\xb9\x20\x08\xf4\xa0\x56\x3f\x89\xcf\x0e\xc3\x69\x87\xb1\x7f\x0f\xe1\x85\xf3\x97\xce\xf7\xac\xc3\xd6\x5e\x1c\x6f\x55\x75\x4d\x41\x45\x73\x40\x48\x19\xa3\x6f\xeb\x01\x28\x76\x9c\x54\x41\x4f\x2e\xfe\x07\x65\x2e\x47\x9b\xdf\xc6\x25\x91\xc1\x93\x55\x6a\x1b\x19\x04\xe4\xde\x6f\x86\x04\x37\x9b\x38\x76\x0b\x72\xcb\x67\x84\x45\xaf\x34\x6f\xd1\xd7\x76\xdb\x9c\x29\x91\xeb\x24\xc0\x82\xf8\xd8\x37\x4f\x78\xcb\xb3\x01\x0d\xf4\xc0\x17\xe5\xcb\xea\x1c\x40\x1c\xb9\xc4\x40\xd7\xce\x09\x73\xc0\x08\x5d\xa9\x6e\xd4\x1a\xcf\xc4\xb6\x67\xbb\x31\x1a\x5d\x78\xec\x75\x38\x89\x50\x9f\xed\xfb\x9f\x78\xf7\x09\x63\x73\xc8\xc5\x29\x60\x15\xdd\xe9\x82\xa4\xc2\x86\x14\xbc\xfe\xb6\xb9\xb9\x99\xfb\x14\x38\x40\x2e\x8c\xa4\x3c\x5d\x6b\x33\x99\x33\x6a\xa6\xfd\x52\xff\x78\xf5\x41\x71\x73\x2b\xb3\x51\xab\xf7\x51\x94\xb0\x2d\x57\x42\x64\xc9\x40\xd4\x48\x71\xbb\x5e\xf2\xa5\xa1\xdf\x7a\xea\x70\xa0\xb9\xd6\x94\x66\x3e\x72\xd6\x23\xd6\xe4\x6d\x69\x18\xd8\x07\x6c\xa8\xb8\xc8\x66\xe1\x97\xbd\xd6\x68\x21\x2d\x8d\xc8\x6d\xaa\x13\x7f\xa7\x35\x8f\xe9\xa5\xe2\x29\x8d\x4d\x97\x5f\xc6\x23\xec\xf7\x27\xdf\xe1\xbb\xc7\x2c\xe9\x93\xd1\x98\x6b\x16\x30\x6a\xd3\x29\x8e\x02\x4d\x9e\x83\x57\x17\xf2\x7e\xce\x51\xc5\xff\x80\x2b\xfc\x8c\xd9\xfa\x89\xed\x83\x18\x37\xbd\xf2\xf4\x0c\x64\x74\x87\xbb\xcb\x9c\xb7\x66\xfd\xca\xc1\xc4\x86\xe7\x61\x90\x7b\x8a\xb1\x69\x21\xb9\x8f\xc8\xb6\xea\x0c\x38\x02\xfd\x15\xe2\x08\xc4\x45\x02\xe8\xe2\xdc\x7f\xdb\x36\x90\xc7\xda\x75\xd3\xfc\x18\xdc\xa3\x84\x3a\xbe\x7a\xe3\xbc\x68\x9a\x6d\x5b\x7d\x1c\xbd\x4c\x1c\x85\xd4\x63\x4f\x29\x10\x03\xa5\x03\x13\x07\x4c\xa8\x72\x18\x75\x38\x52\x00\x34\x41\x48\xa3\x34\xa9\x14\x61\x23\x2e\x72\x65\x04\xcf\xf1\x2a\xa3\x3f\x05\x70\xfd\x0f\x6f\x89\x42\x82\x00\xdd\x7a\xb4\x33\xb5\x79\x49\xb3\x08\x96\x31\xf2\x79\x29\xdd\xb3\xa9\x62\x15\x78\x29\x33\x8f\x15\x49\x30\x4f\xc4\xc4\x3c\xf2\xcd\x08\xf6\x61\x74\x28\x6e\x0b\x2a\x92\x27\x11\xfe\x14\x92\x9c\xbe\x8c\xd2\xec\xdb\x2b\x3c\x0d\x6d\x07\xcb\x34\xd7\x79\x6d\x1f\x51\x2a\xc9\x5e\x96\xfd\xc6\x95\xd1\xd2\xd8\xf9\xb3\x05\xf0\xb8\x66\xa0\xbe\x45\x9f\x1f\xc7\x37\x47\xd8\xa7\x45\xe5\x89\x94\xa7\x78\xc5\x69\xcd\x7e\x58\x0e\x58\x13\x13\x43\x81\xde\x2f\xf5\xbc\xfd\x47\xaf\x56\x4d\x86\x37\x1e\x6f\x1f\x40\xad\x7a\x2d\xbc\x1a\x7a\x92\x9d\x7b\xfa\x07\x78\xc6\x44\x73\x05\x2a\x84\x97\x29\xb1\x29\xa3\x1c\xb7\x18\x27\x1a\x58\xac\x65\xe1\x7e\x33\x9c\xbd\xf7\x2c\xea\x87\xac\xa4\xd9\x23\x94\xbb\x14\xe5\x61\x50\x40\x5a\xf3\x8f\x80\x23\x7b\x20\xf8\xca\x4d\xc7\xf3\xad\xa3\x2c\x40\xf7\x9e\x6b\x22\x91\x94\x54\xc6\x52\x6a\x8e\xfe\xeb\x18\x15\xba\x72\x44\xca\xa8\xdc\xb2\x01\xa1\xaa\x14\xef\x31\xfd\xad\x0d\xad\xa3\x96\xbf\x2c\x37\x1e\xae\x4a\x00\xa4\x6b\x5f\x31\xa3\x0b\x79\x36\x94\x44\x52\xdf\x9a\xc9\x13\x94\x89\xac\x63\xbd\x38\x8d\xf2\xd1\xaa\x32\xa9\x01\x3d\x45\xfc\x9c\x6e\xa7\x89\xb5\xad\x43\xdf\x5a\x19\xf8\xdc\x7a\xa3\x46\x1e\xd9\x3a\xcb\xab\xe1\xcd\x81\x6a\x45\xdd\xde\xc0\x9d\x23\x2c\x5e\xf5\x1e\xac\x56\x66\xe9\x13\x05\x9b\x0b\xfb\x41\xc9\xff\xbe\x1e\x96\x43\x25\xf9\x57\xdd\x79\xb9\x46\xad\xfa\x37\x79\x48\x25\x65\x7c\xdc\xfa\x69\xa7\x44\x2c\xe0\xdd\xe1\xe7\x17\x53\x2a\x74\x74\xe6\x49\x39\x93\x59\xec\xb5\xb1\xbb\xaa\x72\xff\x9b\xd2\x7d\xe0\x4e\x53\xdb\x84\x36\x13\x79\x7f\xbd\xff\x4d\x75\x17\x69\x46\x74\x9a\x7f\xcc\x3e\xc7\x95\x2c\xd6\x80\x89\x6d\x2b\x9e\xf2\xba\x16\xc7\x0b\x67\xe0\xda\x9f\xa0\x1f\xce\x9c\x95\x64\x02\x3d\x35\xd0\x9c\xde\x04\xb7\x49\x28\x00\x69\x04\x92\xca\x01\xab\x89\x60\xd0\xef\x80\x3a\x44\x22\xb8\xe7\x54\xc9\x4b\xbf\x99\x95\x9b\x2b\x4b\x0e\xb3\x7e\x60\xf6\x0f\xef\x9e\xd7\xb9\xba\xb3\x6c\x1b\xa2\x00\xda\x85\x14\xf3\xdc\x41\x75\xc5\xac\x0e\xcf\xd6\xf6\xbb\x23\x56\x14\xf1\xee\xe5\x16\xdd\x97\xe4\x0b\x37\x44\x4b\xd3\xd8\x3f\xda\x9b\x33\x01\x73\x49\x35\x6a\x00\xa2\xb0\xfb\x34\xb4\xf3\xea\x4b\x02\x66\xa2\x36\x21\xf6\x29\xf3\xdb\xc7\x10\xce\x03\x48\xbb\x83\xa3\x5c\x40\x97\x70\xf5\x3a\x8b\x08\xb4\xb3\xf7\xef\x04\x25\x28\xd9\x1b\x4a\xdd\x1a\x7c\x87\xb9\xb2\x57\x32\xd4\x7f\xff\xde\x05\x99\xbd\xf6\x34\x46\x4e\x28\xfe\x87\x02\x29\xfb\x46\x72\x86\x7c\x88\x05\x21\x51\x59\x79\xf1\x60\xad\x0e\x23\x71\x79\x1b\x00\xf2\x5f\xdf\xe6\x59\xa3\x6b\x3f\x9d\xe8\xb9\x12\xff\x06\x6a\x72\xc8\xa4\x81\x4c\xf8\x78\x17\xcd\x6f\x63\xde\xbf\x62\xcc\x87\xdf\xed\xbd\x9a\x52\xcf\xc5\x4c\x66\xdf\x8f\x6f\x54\xd4\x14\x14\xfc\xb1\x70\x63\x9c\x0b\xd3\xfa\xd7\xb5\x71\x8a\x08\x44\xd7\x8c\x91\xb4\x7f\xc4\x12\xf4\x50\xc5\xa9\xbf\x72\x3f\x16\x40\x18\x79\x1e\xf7\x24\x34\x13\x33\x15\xb1\x18\x0e\x3e\x20\xc6\x5e\xc3\x99\x3b\xfc\x65\x6d\xb0\xdd\xb0\xfc\x2e\xf1\x21\x6b\x33\x88\x46\x4b\xa9\x27\x08\x36\x59\xe1\x8a\x08\x41\x7c\xfc\x42\x10\x29\x67\x13\xf4\x3a\xa4\x21\xc7\xc1\xe1\xd5\x3e\xe4\x5b\xd5\x00\x69\x09\xba\xa1\xda\x1e\x49\xa5\x55\xa1\x56\x6e\x32\xe0\x26\xa1\x6d\x52\xf0\xc2\x9b\x1c\x58\x64\xf3\x0f\x9a\x75\xc0\x96\x35\xdb\x61\x03\xeb\xff\x5a\x33\x48\x98\xe3\xf1\x7c\xd1\x28\xf7\xce\x9a\x83\xe0\x58\xcc\x0d\xe0\xbd\x7b\x87\x97\x71\x36\x84\xe6\x6a\x48\x33\x4a\x23\x41\x85\xd0\x6a\x50\xee\x3b\x9d\x36\x32\x2a\x74\xd6\x44\x8c\x43\xca\x78\x92\x67\x1a\x35\xf5\x30\x37\xfa\xfd\x7d\x00\x0e\x87\x80\xa0\x89\x19\x88\xee\xf4\xe1\x53\xfc\xcc\x95\x47\x2f\x61\x1a\xf5\xbd\x86\x21\xf3\x65\x53\xf5\x65\xf3\x27\xf5\xf1\x60\x03\x0c\x43\x2f\x94\x7c\x0c\x42\xa3\x92\x31\x5e\x11\x47\x1a\x63\x13\x3c\x4c\x67\x0f\x37\x4b\x0b\x02\xa5\xbc\xf7\x28\x89\x5b\xba\x39\x06\x12\xa5\xb9\x28\x89\x46\x33\x9d\x46\xb6\xab\xbc\x6e\x30\xf1\xf7\x41\x72\xf1\xd0\x1c\xba\x02\xf5\xe7\x00\x73\xc0\x6c\xcc\xd2\x43\x95\xab\x28\xf7\xa5\xbe\x69\xd2\xc9\x7f\xf0\x6c\x6d\x77\x8f\x88\x3d\xde\x9a\xd3\x1f\x9d\xbb\x77\x41\x92\xf6\xef\x26\x37\x1a\x89\x37\x0e\x21\x45\x9e\x00\x09\xc9\x66\xae\xe9\x9b\x93\x6a\xce\x5b\xc4\x2b\xf7\x7a\xe4\xbb\x8f\xf4\x03\x88\xff\x7c\x4a\xb8\x28\x92\xad\x88\x8f\xb9\x70\x60\x8e\x57\x0e\xab\xbf\x6e\xc8\x01\x9f\x5c\xc4\xd1\x68\xe6\x86\x2a\x7f\xf4\x41\x76\x3c\xce\x75\x8b\xa3\xab\x87\xc0\x5f\x79\x21\x10\xae\x1c\x10\x03\x79\x53\x60\x36\x87\xea\x63\xbc\xee\xda\x6d\x8d\xbb\x9b\xd9\xd1\x9a\x73\xb7\x68\x2f\x1f\x0c\xa4\xdb\xc1\x5e\x1e\x71\x96\x87\x10\x0e\x3e\xa0\x1d\xb5\x4e\xed\x24\x1b\x0b\xe4\x5e\x2c\x2f\xb0\x62\xe2\x40\xf9\x4b\xcc\xff\xaf\x9a\xde\x69\x80\x4c\x30\x13\x8c\x14\x43\x31\x42\xc9\xd3\xe6\xc7\x5b\x3b\xbd\x1b\xfb\x37\x29\x4c\x54\x9e\x7c\x91\x7b\xe3\x54\x04\x40\xbf\xed\xc3\x2a\x86\x4a\x1e\x58\xce\xee\x05\xbf\x64\x4b\xc8\xc6\xd2\xf1\xbd\xa3\xb3\x99\xcc\xbd\x66\xc5\xfa\x12\x52\x17\x62\x74\x40\x2a\x81\x29\x25\x7e\x2d\x75\xaa\x80\xbb\x30\x39\x39\xe4\x17\x3f\x76\x1e\xbd\x8c\x82\xc6\x45\x3e\xad\xe5\x69\x77\x64\x7e\xbd\xfa\xf7\xf1\x6e\x13\x7c\xe6\x48\xad\x82\xe4\xde\x46\xed\x44\x88\x0a\x07\xde\xff\x62\xd4\x11\x66\x67\xa9\x7f\x6c\x7d\xfa\xfb\x06\x83\x1c\x20\x17\x16\xd3\x45\xb0\xf5\xd4\xaf\x88\x04\xa1\x68\x25\xcb\xbc\x97\x6e\xc5\x55\x30\x45\x3d\x59\xef\x68\x7f\xe2\x58\x76\x9b\x5a\x17\xf0\x8f\x8a\xcc\xb9\xf9\x8a\x84\x8e\x8f\xb5\x24\x62\x08\x54\xcb\x65\xb1\x53\x01\xce\x1e\xff\x84\x08\x19\x18\x7a\xbc\xf5\x9d\xf9\xb9\x40\x30\x0d\x4f\xb5\x5d\x94\xd4\x4e\x3d\xe6\x84\x26\xcc\x29\xfe\xc1\xab\x4a\x02\x25\xe5\x86\xe8\x7d\xd2\x93\x8a\xc5\x25\x33\x4e\x17\xc4\xdd\x55\xcd\xdd\x84\xe1\xcf\x43\x13\x46\x48\xfd\x88\x1f\x00\x47\xd5\x6b\x6b\xe3\x3f\x0a\x27\x6f\xef\xc7\x42\x64\xb1\x3a\x00\x83\x9d\xe2\x43\x08\xe1\x67\x9d\xbd\xc2\x4a\xb6\x37\xce\x73\x5c\xcb\x88\x4d\xaa\x78\x0d\xa3\xcc\xbf\xe6\x21\x8e\x84\x56\xff\xed\xb4\xfb\x75\x4b\x6d\x17\x14\x5c\x3c\x21\x12\x20\x7c\x68\x4b\xc1\xf7\x81\xa3\x3f\x39\x37\x38\x0a\x87\x8c\x4d\x97\x3c\x41\xab\xde\x50\xcf\xff\xe8\xdb\x9b\x3f\x9f\x96\xe2\xda\x07\xa8\x45\xb7\x1e\x55\xb6\x27\x73\x28\x80\xc9\xb8\xba\xd9\x6e\x31\xc7\x64\x13\x9f\xdf\x7f\x92\xda\x85\xdc\x46\x84\x6d\x21\x04\xdf\xee\x5c\x45\x63\x79\x6f\x0d\x3d\x9f\xe3\xe7\xea\x8a\x1c\xd9\x05\x17\x4a\x82\x91\x93\x32\x22\xae\x82\x0c\x93\xa9\xca\x62\x0a\x3d\xcf\x27\x22\xbd\xd2\xca\x6e\x39\x51\x8f\xe9\x8e\x17\x47\x21\x4d\x55\x02\xcb\x0b\x0c\x0c\xdb\x01\xab\x89\xe1\x60\xc0\x55\x4a\x46\xb8\x14\x19\xe5\x76\x8a\x3f\x7a\x66\x56\x56\xd2\x25\x60\x4c\x59\xad\x12\x34\x37\x7a\xd3\xf1\x3a\x8b\x76\x14\x90\x57\xf7\x14\x8f\x14\x3b\xb5\x30\x81\xc3\x03\x3f\xdb\x95\xaf\x5d\x85\x4b\x08\xc9\xc4\xcd\x33\xc8\x27\x59\x34\x9d\xb9\x4f\x55\x44\x42\xfe\x8a\x05\xa9\xe0\xc3\x43\x1b\x4c\xdc\xd1\x18\x95\xad\x73\x7d\xcb\xa2\x00\xb9\x5e\x16\x76\x0e\xf2\x95\xda\x33\xe4\xde\x66\xec\x40\x58\xad\xc8\x8f\x30\x2e\x41\xfa\xda\xb1\xb9\x93\x85\x12\x25\x7d\x22\xc3\xd7\x48\x7c\x8f\x6d\xcf\x02\xa0\x0b\xaf\x94\x8e\x2f\x7c\xd4\xfc\xfc\x11\x11\x9a\xc7\x85\x96\xe9\x03\xd6\x46\x33\x69\xe0\xfd\xd3\x7f\x9a\xda\xe2\x49\x08\x8f\xe1\xe0\x57\xec\x87\xf7\xab\xa8\x59\x7b\x9b\x6e\xdb\x8f\xb2\xb1\x3f\xe1\x26\x68\x3f\x4e\x30\xc1\x44\x87\xf5\x75\xca\xab\x6a\xf9\x59\xb5\xf1\x54\xb0\x80\x16\x15\x2b\x4d\xc3\x9c\x3c\xec\x34\x1e\x0f\x6c\x01\xc0\x9b\x89\xae\xe0\xf1\xa2\x18\xe2\x90\x81\xd1\x3e\xfc\x43\x5f\x47\x33\xb2\x50\xef\xca\xc2\xba\xfd\x1b\x5e\x51\x99\xe8\xa9\x95\x5f\xaa\x0b\x3f\xa3\x35\xbf\xf8\x4d\xa1\xeb\x47\x74\xee\xf5\x82\xc8\x22\x73\x2e\x86\x98\x6c\x13\x8e\x4e\xd1\x51\x4b\x88\xe7\x15\x01\x46\xde\x7e\x4f\x41\x38\x26\x28\x96\xcb\xbe\x38\xc2\x5e\x44\x9c\x44\x16\xad\x6b\x54\x38\xad\x75\x09\x49\xe1\x3a\x9a\xba\xf8\xf4\x0f\x8b\x5d\x7b\x31\xb0\x2c\x51\x88\x76\x32\xb8\xd8\xef\x63\x99\x50\xc6\xab\x17\xc4\x61\x33\x93\x89\xf8\x6c\x97\x8d\x8d\x22\xce\x38\x9c\xb8\x9a\xe5\x1d\x99\x6f\x4d\x10\xd4\x46\x66\x56\xa6\x25\x62\x97\xdf\xd3\xf6\xcb\x1e\x0f\x6a\x78\xdd\x10\x94\x5f\x3b\xfe\xf7\xe1\xa8\x35\xf5\xa7\x82\xcf\x61\x3c\x91\xaf\x37\x46\x8d\xe2\xc3\xf8\xa9\xa3\xef\xed\xd6\x09\x27\xda\x6f\xf4\xe7\x26\xf3\x2d\x67\x21\xba\x42\xfa\x30\x4b\x29\xd6\x78\x1c\x53\x73\x6d\xe4\xa6\x8a\x47\xaf\x29\xfa\x5c\x9e\x9b\x21\xb7\xb5\x73\x73\x20\xea\x7e\x5b\x77\xbe\xee\x0d\x0a\xb5\x9b\xf2\x79\x72\xf6\xba\x20\x48\xc4\x26\x02\x99\xe7\xf9\x13\xfb\x51\x40\x53\xf8\x15\x71\x66\x58\xbd\x13\x96\xa2\xa4\x99\x81\x4c\xb1\x50\x37\x61\x7f\x8b\x27\x80\x5d\xfc\xbd\x9b\xcf\x5c\x5a\xed\xda\xda\x11\x25\x10\x77\x33\x7c\x69\xce\xc0\x00\xe8\x2b\x0c\x6e\x99\x4d\xea\x5d\x39\x75\x84\xe8\x34\xf5\x8d\xe6\x46\x4b\x7a\x76\x17\xa3\x57\x12\xba\x9c\x6e\xbe\x3b\x83\xfb\xe1\x60\x4e\xfc\x7f\xb3\x6e\xcd\x64\x2c\xd0\x65\x2e\x9a\x6e\x67\xe2\x5d\x3e\x9d\x7e\x89\xa1\x06\xd9\xfc\xd8\xa5\x46\x2f\x26\x61\xef\xb3\x83\x9e\xba\x3f\x09\x3c\x6c\x8f\xbd\xa6\x4d\xa1\xbe\x71\x96\x9a\x4a\x58\xd2\xea\x23\x53\xe4\x6c\x0a\x67\xd8\xf1\xb0\x98\xe7\xf8\x6d\xc7\x2c\x3e\xa0\x96\xd3\x6e\x43\x17\x6f\x82\x8f\x8d\xe6\xff\x52\xfa\x37\x7f\xe6\xd7\x50\x4f\xac\xbd\xad\x79\x4a\xc3\xe4\x39\x81\x09\x00\x56\x8a\x3e\x69\x18\x9c\x0a\x73\xcc\x55\xee\xf6\x38\x4a\x30\x5c\xb2\x51\x24\x3f\xd1\x8a\xcc\xf5\xeb\x68\x0e\x00\x73\x68\xbc\x21\x9e\x30\x81\x0e\x0d\xae\x37\x7c\x38\x6f\x65\xac\xc0\xeb\xdb\xf3\x8e\x44\x23\x54\xee\x6b\x09\x1a\x58\x23\x55\xea\xaf\xe2\x58\x72\x15\xaa\x14\x4d\x8f\xa7\x58\xfe\x51\x6b\x9c\xcf\x6c\xb7\x9c\x3b\xe4\xdc\xec\x53\x23\xaf\x4d\xa6\x5b\xe9\xa3\x24\x5d\xbe\x41\x90\x8b\xbf\x0f\x55\x99\x20\x20\xfb\xe7\xed\x90\x6b\x9e\xa1\xab\x93\xe7\x78\xd5\xcd\x4a\x83\x62\x6d\xb4\xc6\xdd\xba\x6f\x4e\xf7\x34\xd0\x23\xe2\xa1\x06\xf0\xcf\x20\x03\x60\x7a\x68\x5a\x63\xc6\x7b\x4a\x29\x00\x9c\x9d\x1b\x9b\xed\x28\x82\x26\x4e\x2a\xcd\x40\xef\x41\xc3\x0d\x50\x6c\x70\x8d\xc2\x6f\xbb\x99\x11\x0c\xad\x12\x98\xbc\x9f\xa2\xeb\x74\x98\xd2\x25\xca\x23\x1c\x47\xd4\x00\x56\x80\x0e\x0b\x73\x44\xd6\x3f\x37\xec\x7a\xe1\x77\x50\xba\x75\x3d\x9b\xd5\x9d\x5a\xd6\x54\x38\x52\x05\xf8\xac\xfd\x14\xcc\x59\x42\xa5\x74\xd5\x6b\xc7\xd2\x62\x8c\x30\xfa\x65\xdf\x1f\x7f\x64\x80\x55\x7b\x10\xf1\xe1\x5c\x55\x59\x18\xb5\x61\x0e\xdd\x28\x37\x79\x23\xcd\x4a\xa5\x10\x12\xad\xf1\x59\xf1\x90\xf8\x2f\x38\x71\x2f\x7e\x0a\x9f\x6b\x79\x03\xd2\x94\xff\x83\x58\xb3\x69\x27\xe8\x76\x82\xe5\x28\x84\xdd\x18\xc0\xed\x66\x46\xb1\x13\x26\xc5\xd5\x9c\x50\xaa\x97\x9d\x18\x9b\x9a\xd0\x05\xb4\xd5\x28\xff\x91\xdd\x85\x4b\x40\x9f\x19\x69\xbb\x44\x12\x2e\x7d\xf0\x03\x29\xe1\x7b\x01\x68\xdd\x8d\x87\x24\xe2\xee\xe2\x56\xf5\x32\x13\xd2\xc5\x13\x39\x6c\x9c\x20\x6e\x9b\x8b\x69\x3c\x30\x69\x53\x93\x47\x13\x4a\x94\x4a\xb8\x65\x2e\x04\x3c\xc0\x14\x4d\x62\x08\xa8\xd2\x66\xce\xec\xd4\x69\x5f\x95\x29\x41\xb8\x68\x08\xf8\xfc\x76\x06\xb5\xcb\xed\x93\x55\x88\xd8\x56\x14\x26\xdb\x4e\x7b\x7a\x1f\x69\x75\x65\x19\x62\x6e\xc3\x9b\xf6\x56\xbe\x64\x5f\x13\x2a\x1c\x0e\x48\x3e\xc9\x92\x30\x94\xbc\x23\xc2\xd2\xc9\x4b\xd6\x05\x5d\x3e\xaa\x8d\xfa\xc4\xe9\xf4\x01\x22\x77\x9b\x19\x30\x22\x87\xbf\xeb\xa4\x2e\xee\x31\x5a\x1f\x30\x83\xbc\x0a\xbb\xa1\xbb\x3a\xe2\x5f\x7c\xc7\xe4\xd7\xe9\xc0\xfb\x93\x4b\xd8\x21\x87\xfb\x85\x92\x44\x5f\x46\xd0\x5a\x48\xcb\xe8\x26\x64\x40\x20\xc7\xb4\xf6\x46\x3f\x6d\x7c\xe4\x33\xc4\x48\x74\x1e\xb2\xc2\x84\xf3\x86\x1c\x44\x6c\x1b\xc5\xb5\x02\xc5\xd4\x24\xa1\xe8\xb7\xf4\x20\x80\x52\x80\xab\xb2\xd7\x2b\x6e\x87\x46\x0c\xfa\x36\xaa\x1f\x35\xbd\xf4\xef\x4d\xb4\x7f\xbb\x61\xa5\x38\x0d\xf1\xe7\x80\x99\xdf\x17\xde\x98\x0c\x93\x8c\x01\xdb\xf0\x40\x6b\x0b\x5c\xb2\x0a\x53\x95\x41\xbb\x27\x52\x8c\x15\x04\x32\x18\xef\x68\x16\x78\xf1\x8b\x79\x40\xd5\x3c\xab\xea\x7c\x58\xf2\x1b\xf7\x9f\xc1\xec\x62\xaf\xac\xe4\x28\x4c\x1c\xf6\x70\xec\xbd\xc1\x60\x3f\x26\x58\x5f\x27\x98\x78\x54\x07\xb0\xd0\x6b\x33\x7b\x39\x73\x3b\xb3\x73\x3c\x4c\xbd\xc7\xb5\x68\xbe\x41\xc1\x7b\x18\x8d\xb4\x83\x94\x4a\xd2\xc0\x2b\x4d\xe6\x26\xe9\x0e\x3e\x02\x3d\x69\xd5\x68\xfd\x6d\x25\x2d\xb9\x18\x4a\x8b\x21\x12\xa0\xfe\x3e\x5a\x16\xbf\xa5\xa4\x64\xbf\x49\xb6\x4f\x79\xcc\x89\xce\x54\x51\x40\xe9\x55\x43\xe3\xcd\xb0\x38\x67\x71\xfc\xdf\x55\x21\xe1\x3c\xbf\xc2\x4c\xa6\xd9\x09\xce\xf7\xff\x42\x2e\x39\x9c\x63\xbe\x54\x3d\xc0\x37\x74\x8b\x2a\xbf\x02\x36\xa3\x3c\xc3\x42\x43\x2e\x00\xe9\x5c\x98\xae\xe6\xc5\x4a\x0a\x22\xd4\xbd\x12\xa0\x36\x11\x1d\x56\x1c\x54\x96\xf2\x03\x90\x83\x4e\x08\x53\xed\x80\x15\xa0\xd3\x67\x33\xe9\xb7\x84\xe7\x4e\x17\xa2\x64\x18\x6c\x72\x45\xc3\x0e\x38\x19\xfa\xe1\x20\xa4\x6f\x02\xf8\xa3\x3b\x21\xf0\x72\x01\x0b\xe2\x1d\x60\x33\x89\xaf\x18\xe1\xbb\x09\xbb\xa7\xf7\x25\x2f\x36\x11\x00\xdf\x53\x74\xb0\x93\x45\xf6\xfe\x18\x71\x14\xe2\x7c\xeb\xe2\x22\xc7\x61\xb5\xca\xbf\xb4\xa3\x1e\xe4\x5f\xcb\xaf\xe2\x4f\xd7\x28\x01\x16\x07\xd2\xe3\x1b\x72\x70\x0d\xae\xda\x69\x87\xf8\x5d\x94\xfa\x72\x55\xec\xe5\x08\x5f\x4d\x50\x35\x93\x78\x56\x15\x42\x9e\x78\x00\x14\xbe\xa5\xd9\xab\x9f\x19\xdc\x4c\x21\x16\xca\x18\x52\x0e\xd6\x84\x79\xf0\x21\xe5\xc7\x46\x46\x43\x8d\x02\x1a\x31\xf7\x6f\xc8\xa7\x79\x50\xb1\x2f\x77\xc7\xa2\xea\x76\x1b\x90\xc4\x8e\xb7\x56\xe0\xc3\x1b\x5f\xcd\xea\x10\x9f\x5a\x7e\x3d\x1e\xad\xf6\xa1\x29\xe2\xd4\xce\x13\xdd\xfe\x63\xc3\x61\xd4\x86\xb9\x7f\x44\x26\x15\x58\x30\x2f\xb9\xe0\x39\xd7\xca\xcc\x29\x8a\x40\xd1\xe8\x03\x04\x0e\xe1\x01\xca\x6d\x05\xf7\xfa\x26\x2f\xb8\x46\x2d\x93\xd5\x5d\x50\xd9\xa6\x3a\x21\x9f\x19\xa1\xdd\xa5\xb1\xf1\x9c\xdf\xb2\x56\x13\x46\xd8\x75\x26\x30\x1c\xfb\xdb\x32\x66\xa5\xd9\x79\xde\x27\x5f\x3d\xd9\x95\xe0\x8c\xb3\xe1\xe7\x44\xfe\x94\xd4\x8a\xab\x84\xd0\xb4\x09\xd5\xd6\x8e\x09\x47\x5a\xa3\xa0\xe3\x3f\xbc\xd5\x05\x9d\xc1\x60\xa9\xe4\x58\x1f\x02\x05\xc7\x5b\xc1\x06\x76\x68\x39\x55\x10\xab\x9d\x74\x00\x69\x01\x77\x51\x6e\xfb\x1f\x37\x64\x20\x74\x3b\x65\x8a\x8b\x36\x6c\x95\x55\x47\xa7\xc5\x60\x01\xd4", 4096); *(uint8_t*)0x100011c0 = 0xa; *(uint8_t*)0x100011c1 = 0; memcpy((void*)0x100011c2, "./file0\000", 8); syscall(SYS_sendto, -1, 0x100001c0, 0x1000, 5, 0x100011c0, 0xa); break; case 6: res = syscall(SYS_socketpair, 2, 0x20000000, 9, 0x10001200); if (res != -1) { r[1] = *(uint32_t*)0x10001200; r[2] = *(uint32_t*)0x10001204; } break; case 7: *(uint32_t*)0x10001280 = 0; *(uint32_t*)0x10001284 = 0x10001240; *(uint32_t*)0x100012c0 = 8; syscall(SYS_getsockopt, (intptr_t)r[2], 0x84, 0x8003, 0x10001280, 0x100012c0); break; case 8: syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); break; case 9: *(uint16_t*)0x100013c0 = 7; *(uint16_t*)0x100013c2 = 0x800; *(uint16_t*)0x100013c4 = 0x1210; *(uint32_t*)0x100013c8 = 9; *(uint32_t*)0x100013cc = 5; *(uint32_t*)0x100013d0 = 0xf0a2; *(uint32_t*)0x100013d4 = 0xff; *(uint32_t*)0x100013d8 = 5; *(uint32_t*)0x100013dc = 0; syscall(SYS_setsockopt, -1, 0x84, 0xb, 0x100013c0, 0x20); break; case 10: memcpy((void*)0x10000000, "\x6c\x22\x1b\x95\x91\x42", 6); *(uint8_t*)0x10000006 = 0; *(uint8_t*)0x10000007 = 0; *(uint8_t*)0x10000008 = 0; *(uint8_t*)0x10000009 = 0; *(uint8_t*)0x1000000a = 0; *(uint8_t*)0x1000000b = 0; *(uint16_t*)0x1000000c = htobe16(0x8100); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 0, 3); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 1, 3, 1); STORE_BY_BITMASK(uint16_t, , 0x1000000e, 4, 4, 12); *(uint16_t*)0x10000010 = htobe16(0x86dd); STORE_BY_BITMASK(uint8_t, , 0x10000012, 4, 0, 4); STORE_BY_BITMASK(uint8_t, , 0x10000012, 6, 4, 4); memcpy((void*)0x10000013, "\x2f\xbd\xc1", 3); *(uint16_t*)0x10000016 = htobe16(0x1259); *(uint8_t*)0x10000018 = 0; *(uint8_t*)0x10000019 = 0; *(uint64_t*)0x1000001a = htobe64(0); *(uint64_t*)0x10000022 = htobe64(1); memcpy((void*)0x1000002a, "\xbe\x56\x21\x30\x84\x8d\x9f\xab\x09\x18\x05\xc8\xa5\xaa\x19\xf8", 16); *(uint8_t*)0x1000003a = 0x34; *(uint8_t*)0x1000003b = 5; *(uint8_t*)0x1000003c = 0; *(uint8_t*)0x1000003d = 0; *(uint8_t*)0x1000003e = 0; *(uint8_t*)0x1000003f = 0; *(uint8_t*)0x10000040 = 0; *(uint8_t*)0x10000041 = 0; *(uint8_t*)0x10000042 = 4; *(uint8_t*)0x10000043 = 1; *(uint8_t*)0x10000044 = 2; *(uint8_t*)0x10000045 = 4; *(uint8_t*)0x10000046 = 0x25; memcpy((void*)0x10000047, "\x4f\xff\x9f\x1a\xce\x72\x32\x12\x09\x38\x88\x6f\xc4\x17\x73\xcd\x56\x23\x04\xbe\xb3\x92\xdf\x23\xec\xaa\xf5\x1b\x0e\xf9\x49\xb8\x58\x71\x34\xbf\xf3", 37); *(uint8_t*)0x1000006c = 1; *(uint8_t*)0x1000006d = 3; *(uint8_t*)0x1000006e = 0; *(uint8_t*)0x1000006f = 0; *(uint8_t*)0x10000070 = 0; *(uint8_t*)0x10000072 = 0x22; *(uint8_t*)0x10000073 = 0x1d; *(uint8_t*)0x10000074 = 0; *(uint8_t*)0x10000075 = 0; *(uint8_t*)0x10000076 = 0; *(uint8_t*)0x10000077 = 0; *(uint8_t*)0x10000078 = 0; *(uint8_t*)0x10000079 = 0; *(uint8_t*)0x1000007a = 0x1f; *(uint8_t*)0x1000007b = 0xd6; memcpy((void*)0x1000007c, "\x3f\x12\x57\xdb\x54\xd3\xeb\x65\x8c\x54\x54\xaa\x6d\x65\xe3\xb2\x54\xf9\xf5\x20\x2b\x2f\x8f\x01\x86\xfa\xa9\x2d\x39\xcc\x82\x8a\x28\x47\x88\x5b\x13\xf4\x79\xfd\x86\x63\x8b\xa0\x8b\xb3\x51\xc1\x6c\xe5\x82\x3e\x97\x96\x43\x0b\xb0\x15\xba\x9d\x4e\x64\x01\x93\x1a\xfc\x1b\xa5\x3b\xc5\xcb\x82\xd6\xa5\x90\x9f\x98\xd0\x4d\xd8\x4e\x9a\x7f\x66\x5c\x7e\x9d\xf7\xed\x31\xb8\x2e\xe3\x18\xe5\x81\xc0\xfb\x54\x46\x5f\x68\x11\x3c\x92\x7c\x14\x42\xc7\xd4\xbe\xb4\x90\x3b\xa6\x8f\x61\x74\x0f\x64\x1d\x24\xc7\x27\x7f\x3c\xc5\x79\x36\xd9\x7b\x54\xba\x31\xb1\xd3\xec\x71\x06\x9e\xdd\x60\xa9\x95\x4d\x1b\xa9\x7f\xfa\x91\x03\xaa\x85\x67\x2c\x88\xe5\x6c\x8e\x27\x63\x5f\x7b\x4f\xea\x03\xeb\xb5\x44\x15\xf2\x25\xc9\x57\x7a\xde\xa7\x38\x32\x8d\x09\x52\xa6\x59\x25\x3e\x66\x8e\x6a\x19\x0e\x0f\xff\xef\xd5\x63\x5f\x25\x72\x7a\xd4\x81\x3b\xd6\x96\xe5\x36\x66\xc2\xf9\x07\xf8\x25\x65", 214); *(uint8_t*)0x10000152 = 3; *(uint8_t*)0x10000153 = 0x14; memcpy((void*)0x10000154, "\x41\xfe\x8f\x2d\xee\x3b\x9e\x2e\x48\x3e\xf6\x9b\x2d\x94\xfd\x9a\x9f\x40\x45\xc0", 20); *(uint8_t*)0x1000016a = 0x52; *(uint8_t*)0x1000016b = 5; *(uint8_t*)0x1000016c = 0; *(uint8_t*)0x1000016d = 0; *(uint8_t*)0x1000016e = 0; *(uint8_t*)0x1000016f = 0; *(uint8_t*)0x10000170 = 0; *(uint8_t*)0x10000171 = 0; *(uint8_t*)0x10000172 = 4; *(uint8_t*)0x10000173 = 1; *(uint8_t*)0x10000174 = 0x7f; *(uint8_t*)0x10000175 = 7; *(uint8_t*)0x10000176 = 0x1c; memcpy((void*)0x10000177, "\x69\xa6\x74\xf7\xf2\xbe\x24\x0e\xa4\xf8\xd9\x45\xda\xb3\x9d\x5b\x49\x53\x9e\xe1\x65\x00\x47\xe2\x65\x4d\xb4\xcc", 28); *(uint8_t*)0x10000193 = 0xef; *(uint8_t*)0x10000194 = 0; memcpy((void*)0x10000195, "\xc5\x02\xee\x20\x7e\x8f\x2f\x20\x74\xf5\x4d\x87\x6c\x0b\xdc\x7c\x84\xc3\x8b\x6b\x82\xb3\xf7\xf6\x0b\x10\x54\xc5\xbb\x3e\x0d\xd3\xea\x82\x23\x78\xf4\x45\x0d\x73\x40\x1e\x96\x27\x69\x31\x3a\x79\x8f\x7d\x4f\xa8\x3f\x8f\x9d\xf5\x7e\xb2\x24\xef\x87\x25\x8d\xb2\x55\xcf\x18\x28\x9e\x23\x66\x9d\x95\x8d\xc0\xfd\x73\x53\x23\x74\xa4\xe1\xd8\x88\xec\x84\x65\xa9\x6a\x0e\x1c\x4c\xd7\x57\xb9\xb8\x06\xa8\xe8\x2b\x54\x1c\xe4\x8b\x42\x96\x01\x77\xa6\x01\x77\x9e\x66\x7a\xb0\x9b\x5d\x62\xe6\x7e\x78\x7e\x20\xa3\x0e\x71\x98\xcf\x4d\x51\x3d\x5b\x92\xf4\xcb\x0f\x17\xbf\xe3\x50\x96\xba\xe0\x1c\x37\xa0\x72\xf7\x34\x80\x75\xa5\xfe\xa8\x24\xa7\xfd\x0d\x74\xdd\x1b\xad\xfd\x15\x37\x18\x42\x86\x7b\xbb\x03\xbd\x57\xfe\xce\x95\x1b\x93\xf6\x91\x04\xd5\xeb\x04\x2d\xc1\xaa\x28\xaf\x0a\x25\x68\xd9\xe0\xfc\x36\xf7\x1e\xbf\x45\xbd\x77\xfb\xb7\x90\x3d\x0a\x3e\xa1\x7c\xac\x4e\xc3\xd4\xb1\x67\xe0\x11\xc9\x28\x5b\x28\xb8\x84\x22\x9b\x4a\xf0\x03\xf0\x48\x6e\x61\x92\x9a\x07\xa4\x53\xb6\x54\x71\x2f\xc1\x5a\x20\x79\xa3\xf8\xbb\xfa\x6e\xa2\x9e\x81\x80\xce\xba\x14\x78\x56\xec\x55\xb9\x27\x33\xbd\x34\x4b\x46\xff\xf5\xc1\x4b\xa4\x26\xda\xca\x73\xaa\x3e\x19\xbe\xad\xa6\xf8\xa0\xcb\xd0\xbd\x95\x3f\x38\x5b\x5b\x90\xa3\xc6\x7a\x6a\x85\x23\x36\x68\x59\xac\xc1\xc2\x35\xd0\xcf\x99\xe0\x5f\xa5\xaa\xeb\x7c\x13\x9e\xa0\x5d\x41\xd2\x48\x9d\x60\xba\xcd\x85\x80\x39\x1e\x99\xb4\x5e\x5a\x35\xe0\xf8\x5f\xb0\xf9\x37\x5a\x17\x92\x14\x23\x89\x13\xdf\xd7\xc5\x66\x4e\xbd\x0a\x2b\x1b\xfc\xed\x76\xbf\x32\x06\x75\xa6\x1e\xb9\x99\xc3\xe4\x47\xfa\x58\xaa\x56\xc5\x6d\xa7\x08\x45\x99\x47\xec\x3f\xc8\x4b\x1b\xc4\xbf\x65\x1c\x70\x6c\x51\x5c\x3c\x55\xb1\xb5\xcf\x11\x39\xaf\xd9\x54\x34\x21\x53\x51\x60\x64\xd8\x81\xb4\xdb\xec\x30\xae\x9e\xc3\xe1\xe9\xb4\x62\xc6\x49\x6e\x24\x8d\xb1\xa3\x94\xe3\xd6\x90\x8b\xd3\x74\x37\x4e\xa8\x74\xc3\xf6\xdc\x2e\x3e\xb0\xe0\x12\x3b\x84\xcf\x7c\x08\xd7\x47\x11\x54\x38\xf0\x92\xf6\x00\x43\x5b\xb1\x47\x08\xc3\x31\x73\xbc\x11\xaa\xb5\x06\x61\xb9\x80\x23\xe5\x81\x50\xdd\x04\x0e\x3a\x37\x08\x8f\xea\x92\xd2\x93\x32\x9a\x39\xc5\x67\x4f\x6e\xe1\xdb\x67\x1b\x42\x7a\xea\x9b\x8a\xd7\xf1\xbb\x61\x18\x9f\x08\x1d\x8b\xef\xa7\x38\x76\x95\xc1\xcc\x49\x42\x66\x92\x8b\x83\x02\x66\x2a\x59\x62\xdf\x43\x99\x94\x01\x91\x65\x31\x0b\x74\xfd\x9a\xd7\xbd\x8c\x36\xb3\x74\xaa\x61\x52\x08\xee\x16\x89\xeb\x18\xad\x0c\x6c\xee\x62\x78\xe2\x5a\x76\xfe\xa5\x9b\x07\x10\x84\x6d\xf4\x2a\xb2\x44\x8c\x50\x7c\x5b\x80\x05\xaa\xf6\x9f\x93\x01\x7c\x04\x34\x79\xa2\x34\x55\xa7\x6c\x24\x5c\x24\x00\x76\xef\xe0\x19\xab\x50\x65\x19\x80\x2f\x65\x90\x64\x9a\x51\xd2\xd0\x70\x01\x21\x27\x0c\x41\x3b\x7b\x70\x14\x48\x90\xa1\xdd\x12\xb7\x2a\x54\x6e\x98\xc8\xed\xed\xd6\xd8\x42\xbe\x28\xc4\x3c\xe7\x08\xda\xb8\xba\x3d\x17\x40\x60\xf3\x77\xea\xef\xaa\x81\xce\xf7\xb0\x5d\x15\x76\xe9\xc2\xe1\x51\xc4\xb3\x88\x4d\x26\x96\xb3\x74\x1d\x32\x04\x6d\x4c\xf8\xd1\xae\x9e\xa0\x28\xdd\x93\x5a\x8b\xc0\x38\xf3\x75\x17\x16\x0a\x38\xc6\x4e\x76\x3a\x95\x42\xa8\xef\x4b\x3e\x75\x22\x02\x48\xfb\x28\x7b\x56\x83\xec\x08\x3e\xe3\x34\x5b\xd6\x50\x7c\x57\x20\x82\x15\xc3\x53\xcc\x8a\xd2\x3d\x02\x2b\x78\x58\x65\xf7\xf5\xdc\xac\x33\xe1\x34\x16\x03\xc7\xad\x7f\x90\x47\xd2\x51\x07\xed\xcb\x2a\xe4\x98\xbe\x1a\x10\x10\x05\x2e\x81\x69\xf5\x90\x4d\x1c\xcd\xca\xc8\xb3\x9f\xb1\x5d\xde\x6f\xa1\xc9\x80\x3a\x84\x52\xd0\x41\x7a\x61\xe2\xe9\xa0\xea\x82\x3b\x10\xae\xdf\x28\x05\xbc\xdc\xde\xac\xa1\xe6\xe7\x5f\x6c\xf9\xcc\xfc\x9c\xf8\xf2\x06\xd2\x5a\x79\x40\xa7\x73\x92\xb6\x2e\x37\xcb\xa6\xc0\x00\xbb\x81\xb3\x7d\x28\xef\x99\x55\xe2\x0d\xd0\x4b\x15\x95\x7e\x01\xe2\xf4\x4d\x28\xb0\xc2\x69\xc4\xe8\x34\x4a\x69\xb7\xc8\x82\xff\xcb\xea\x99\x1e\x33\x69\xfe\x0b\x12\x20\xfb\x35\x4e\xfa\xd9\x89\x2d\x2c\x01\xa5\xe7\xa1\x77\xc7\x5f\xb1\xd9\x6e\xf5\x51\x63\x12\xe3\x87\xc3\x35\xcd\x3d\x73\xd8\x69\xe9\x77\xe2\x1c\x6a\x96\x85\x85\x68\x95\x86\x3f\xbd\x51\x5f\xf9\xa8\xd5\x44\x25\x8a\x79\x2e\xa7\xa9\x94\x70\x8e\x7c\xd6\x05\xda\xd8\x93\x60\x12\x8d\xe4\x70\x7e\x48\x4d\x00\x5a\xc2\xb8\x04\xb5\x13\x46\x46\x97\x2d\x1d\x70\x07\x32\x4b\x1f\x6d\xdb\x78\xdf\xce\x93\x0f\x81\x81\x81\x71\x3a\x66\x03\x34\x87\x1f\xb8\x67\x79\xd7\x93\xd9\x9d\xbe\x0d\xf5\x6e\x0b\xaf\xa4\xb1\x78\x73\xd3\x75\x28\x2c\x4d\x3f\xad\x2a\x33\xd9\x16\x1b\x47\xe1\xaa\x3e\x72\x7c\x50\x59\xa4\xb5\x6a\x42\x63\x67\xd8\x5e\x25\x7c\x24\x19\xd3\x59\x5c\xb5\xf6\x3f\x4f\xb5\x0f\x94\xa5\x7a\x5f\xc9\x24\xa5\x12\xda\x08\xd8\xa2\xf0\xd5\x70\xe5\x24\x31\x81\x8d\x15\x02\xb4\x37\x73\x8c\x9f\xa7\x4c\x3b\xbb\x34\x94\x61\x78\xe3\xc1\xeb\x18\xe3\xa9\x75\xd1\xf1\x3f\x8c\xff\x97\xd5\xbd\x59\x56\x40\x3b\x55\xa7\xc2\xb6\x0d\xa0\xca\xc2\xa3\x97\x7b\x62\xd3\x20\xbb\x9a\xb3\xde\x40\x8d\x58\xa3\x91\x18\x5f\xd7\xe4\x93\x6d\x78\x4f\x8f\xda\x1b\xcc\xa3\x2c\xce\xdf\x6b\x48\x2d\xb4\x0a\x3f\xe8\x34\xf6\xf0\xf5\x35\xbf\x86\xcb\x5c\x87\x57\xe9\xf0\x12\x19\x44\xaf\xb2\x54\x8f\xd9\x3f\x41\x0b\x50\x6c\x9b\xed\x6b\x23\x67\xf4\xb8\x60\x7f\x81\xff\x29\xe6\x45\xf8\xe8\xc7\x60\x35\x18\x86\xe5\x99\xbb\xb8\x60\x86\xb4\xa1\x15\xf9\xa0\x49\x8b\xf0\x1d\x88\xc3\x3f\xc1\xf3\x95\x56\x35\x40\x69\xf7\xfa\x63\x60\xb5\xe1\x80\x69\x75\x0d\x9c\xfe\x33\x74\xc9\x5c\xd7\xe8\x74\x40\xd4\x9a\x5c\xa0\xe4\xe7\x5b\xc8\x4e\xb8\x11\x52\x38\x46\xbe\x69\x7a\x15\x1f\xbd\x71\x9f\x5f\x18\x5b\xf1\xc1\x83\x83\x1e\x8c\x04\xa5\xcb\x21\x26\x8e\x73\x5a\xc5\x98\x29\xb1\x79\x74\xd6\x60\x9e\x50\x0c\x1a\x88\x93\xd9\x7b\xed\x10\x1d\x78\x36\x37\x0f\xf6\x02\x9b\x5b\x4d\x75\x3b\x86\x5d\xe0\x21\xcf\x97\x4a\x38\xe7\x3e\x00\x4d\x09\xc7\x7d\xa8\xc5\x4d\x21\x69\x5d\xf5\xe0\xe0\xd4\x0a\xcc\xbb\x74\xae\xd8\xad\x97\x18\x78\x8a\x3f\x17\x71\xe5\x4e\x67\x33\x8c\xfa\x59\x6d\xbf\x6e\x1f\xfa\x17\xbf\x79\x98\x9f\xbe\x1d\x46\x6a\x27\xc5\x47\x21\x6b\x20\xee\x66\xdc\xc7\x1d\xa5\xf9\x43\x0d\x8d\x0b\xaf\xf0\xee\x86\x62\x67\x7e\xf2\xeb\x37\x12\x33\xe1\xe0\x11\x69\xe5\x3e\xba\xc9\xf0\xbc\x05\x6c\x8e\xae\x09\xf0\x1a\x28\x55\xba\xc7\x1c\xc6\xe0\x97\xd7\xdd\x94\x2c\x7f\x98\x59\x24\x4f\xdb\xf6\xe5\x74\xbe\xef\x59\xc7\x22\x8f\x6d\x78\xd7\xf6\x2d\x9b\xa8\xed\xd6\xe4\x1c\xa7\xf9\xd4\x64\x0c\xf9\x31\x5a\x8d\x66\xc8\x43\x2a\x65\xaf\x95\x5c\x25\x7c\x48\xba\xff\x0b\xcd\xc2\x23\x48\x56\xdb\xb6\xa6\xf6\xa9\xbf\xff\xa8\x77\x30\x75\xb8\xf1\xd4\xed\x8e\xe1\xe3\x26\x50\x16\x84\x63\x5d\xe5\x4e\x37\x52\x29\x4c\x87\x23\x5b\x5e\x91\x6d\x21\x5a\x34\x32\x38\x2f\xf4\x6f\xa3\xdd\x43\xee\xe2\xaa\xa6\xfd\x2f\xf0\xbe\x12\x04\xc6\x06\xa8\x0e\x98\xba\xac\x4f\x5f\x92\xb4\x0a\x49\x60\x9f\x71\xbc\x11\x8b\x02\xba\xd0\x1d\x98\x5a\x1b\xe3\x55\x91\x7f\xa2\x24\x64\xbf\xce\x65\x2c\x66\x0a\xce\xa7\x6c\xe3\x17\xff\x3c\xaf\xb5\xdf\x19\xcc\xba\x59\x79\x67\x51\x3d\x4f\x9c\x60\x2d\xc7\xf9\xfc\x37\x93\x9f\xee\xc9\x78\xd7\x6b\x19\x5f\x51\x21\x6a\x8d\xa1\xb6\x8d\x56\x1e\x0f\x82\x41\x4a\xa8\x41\x3a\x18\xfe\xe0\x9b\x4a\x71\x64\x2e\x03\xe2\x22\x85\x1f\xc9\x4c\x42\x6b\x3b\x3e\x79\x4a\x1b\xd3\x06\x6c\x5a\x08\xd7\xb2\x07\x6b\x78\x15\x93\x99\x3c\x70\x56\x95\xdb\x0c\x82\x18\x05\x11\x93\xf7\xfa\x41\x6f\x01\x64\x48\xa4\x13\xda\xea\xc5\x25\xae\x8a\xcd\x9d\x89\x08\xdf\xc4\x40\x4d\xae\x86\x6b\x0c\x97\xf1\xf9\x0d\x35\x4d\x26\xaf\x14\x96\x1c\x7e\x2f\x2f\x37\x3a\x7b\x8d\xa8\xfd\x7c\x0e\x92\x7f\xd0\x86\x3a\x62\xbc\xaf\x8b\x49\xba\x64\x4b\x5b\xb0\xa3\xb5\x3e\x6f\x77\xf1\x20\x74\x88\xde\x76\x16\xf0\xd7\x53\x96\xc4\xeb\x9d\xe7\x9f\xf4\xbe\x2e\x42\x8d\xfd\x0f\xda\xc4\x00\xa7\x26\x92\xd9\xa4\xa6\x5d\xa2\x9e\xf0\x9e\xa4\xed\x16\xb7\xaa\x8b\x50\x17\xf1\xed\xa3\x59\x5d\x18\x7d\x28\xdc\x36\x04\x13\x5b\x75\xc7\x44\x61\xb6\x8f\x76\x73\xb4\x19\xc0\xa6\xf2\x99\x89\xd8\x34\x13\x9f\x53\xa8\xa0\xa0\x95\xdf\xda\xb4\x0c\xef\x62\x70\xb2\x9e\x01\xcf\x28\x7f\x54\xc5\xf4\x6c\x80\x3b\xa8\x43\xa6\x00\x01\x66\x6e\x8b\x54\x3f\xe0\x4d\xf5\xc0\x08\x17\x5f\x8a\x23\xd3\x8f\x87\x0f\xaf\xee\xfb\x79\x88\xb8\xbb\x7f\xba\xb1\x2b\xf2\x6f\x43\xf8\x91\xa8\xd3\xac\xe6\x03\xb7\x53\x30\x01\x2c\x7f\xad\xd2\x4d\x64\x30\xd4\x14\x93\xec\xf1\xb9\xc3\xa8\x9b\x3e\xfa\xe5\xbd\xe0\x6c\x3f\x88\xc9\xc8\x1b\x60\x49\xe2\x66\x0c\xed\xab\x5b\x56\xe0\x7a\x84\x14\x3d\x62\xb4\x02\x9a\x65\x37\x75\xaf\x17\x4e\xd4\x7a\xc0\x6b\xa5\x92\x59\xe7\x8b\xa3\x5f\x16\xf9\x29\x51\xf8\xb1\xa8\xe3\x3b\x5d\xf7\x27\xd9\xdc\x00\xc7\x47\x25\x2a\x2a\xde\x5c\x20\xd3\x7d\x6e\x91\xd0\x02\xfc\xf9\x45\x4d\xd4\x31\x7e\x88\x1a\xb4\xac\x6c\xfc\x18\xe2\x38\x04\x2d\x4d\xf4\xc2\xbf\x2a\x9a\x76\xb5\x41\xef\x5d\x7f\x2f\x2c\x7d\x5e\xae\x23\x92\xce\x90\x3f\x45\x92\x1b\xb2\x8a\xcb\x34\xbe\x7c\x88\xea\xae\xda\xe7\x21\x5e\xb6\xbb\xe5\x1b\xe4\x81\x33\x6c\xc9\xed\x10\x16\xc8\x94\xd1\x88\xbe\xa5\x80\x70\x6c\xbe\xeb\xc2\x07\x66\x57\x4a\xd8\xb5\x43\xfe\x47\x3e\xc1\x25\x5d\xa0\x86\x32\xd8\x31\x72\xbf\xe6\x83\xca\x3b\xf0\x65\x8f\xdb\x09\x49\x12\xa7\x48\x17\xc6\x55\x93\xa6\xe0\xdd\xf0\x52\x95\xc5\x52\xe6\xac\xe2\xb1\xaa\x42\xa3\xd2\x65\xf4\xca\xca\x5c\x60\xf7\xdc\xad\xae\x73\x13\x86\x25\xb4\x77\xbb\x3c\xcd\x12\xb6\x39\x2e\x0c\xde\xdf\xba\x8c\x8d\x7f\xc1\x28\xc9\x4a\xe6\x9f\xbe\xa3\x8a\x46\xb2\x1c\x0c\x86\x74\x74\x64\xbc\x03\xe7\x50\xca\x6b\xa7\x7f\x13\x2a\xa6\x13\x8f\x16\x1e\x83\x76\x01\x6a\x61\xef\x8c\x88\xd9\x23\xa0\xc8\x05\xcb\x16\x29\xfb\x32\xc6\x46\x25\xc3\xa7\x1e\xc9\x21\x75\x6a\x2a\xad\xfe\xd1\xf8\xd6\x63\x79\x8f\x26\x3f\x94\x20\xbd\xc7\xfc\xe6\x89\x42\x30\xb6\x34\x08\xab\x93\x42\x59\xea\x1e\x54\x5c\xd8\xc2\x23\x4d\x64\xf5\x4b\x08\x4c\xaf\xfd\x25\x6d\x15\xe8\xaa\xd0\x49\x4d\x18\xcc\x4b\xb9\x2f\x39\x55\x3a\x22\x20\x25\x82\x8f\xb2\x1f\xa8\x5b\xc2\x29\x01\x45\xd7\x30\xac\x09\xac\x3c\x30\xcc\x80\x93\x75\x21\x71\x88\x0e\x57\xf3\x3f\xc9\x13\x2f\xa4\xba\x69\x8f\x74\x0c\x2b\x0e\x55\xbb\x72\xd8\x1b\x6b\xec\x08\x0b\xcb\xf9\x18\x50\xeb\xf8\x1c\x47\x51\x43\x21\x7a\x86\x3a\xb3\x13\xef\x3d\x45\x26\x25\xc4\x15\xe2\x93\x93\x1a\x8f\x5a\xf8\xe1\x76\x64\xcd\x18\x78\x53\x4d\xb9\x50\x36\xfd\x73\xa2\x8e\x86\x29\x7a\x78\xf1\xe8\x07\x65\x77\x59\x53\x53\xa2\x81\xa4\xdd\x97\x78\x27\x9e\xf7\x8c\x0a\x85\x50\x9b\xe0\x47\xbf\x7b\xac\x75\x55\xad\x77\xe9\xca\x51\x08\xd0\x2b\x03\x4d\x91\xae\xbf\x50\x29\x87\x7e\x7e\x8f\xc2\x6e\x56\x2d\x40\xa6\x40\x67\x1a\x63\xd4\xbe\xd4\xd1\x42\xde\xee\x53\xbc\xa2\x66\x4f\x28\x70\xab\x65\x58\x02\x68\x6d\x77\xa7\x93\x7e\x6b\x08\xfb\x96\x5a\x2b\xb9\xa7\x6b\x62\x55\xfa\x13\x2d\x62\x80\x15\xfb\x8b\x1e\x41\x5a\xbc\xea\x1a\xb4\x4a\xb7\xcd\xb7\x1c\xee\xf3\xe2\x68\x7e\x8c\xaa\x02\x56\xe8\xd2\x1f\xd1\x3c\xf3\x69\xae\x00\x9e\xdc\x72\x32\xe3\xb4\xb5\x7e\xe0\xa7\x8a\xbf\x32\xe7\x49\xc9\x7c\xe7\xf5\x00\x33\x45\xed\x0a\x90\x69\x64\xf5\xde\xb1\xc6\x31\x93\x2f\x7e\xd9\x39\x65\x8a\x90\x36\xb4\xa7\x34\x63\xe5\x44\xb4\xb9\x0d\x92\x37\xd9\x18\x93\xac\xab\x6c\x75\x52\xce\x89\xb4\x0b\x37\xd5\x38\x6b\xb2\x60\x50\xa5\xe8\xad\x4f\x8d\x9b\xe1\x43\x6c\x75\xd3\x73\x34\x80\xe6\x50\x34\x3b\x3e\x69\x76\x9d\x9c\xfb\x15\x49\x30\x45\xf1\x79\xcf\xcb\x3c\x2e\x33\xa7\xaf\x2c\xd1\x75\x49\x53\x72\xb9\xd8\xa1\xbe\x2d\x90\x44\x9b\xe7\x3f\xf5\x93\xf9\x95\xd6\x01\x71\x4b\x1f\xc6\x3c\xb9\x34\xa9\x39\xb3\x46\xad\xb0\x65\x90\x50\x26\x34\x3b\x75\x01\x37\x5f\xc2\xb3\x5d\xa8\xd2\x63\x55\xf7\x95\x66\x63\x75\x19\x48\x3a\x51\xf6\xc5\x1a\x36\xd5\x8c\x59\x6e\x27\x75\xdc\x02\xd4\xac\x06\x8e\xea\xad\xdb\x1e\x16\xf5\x47\x87\x9f\xff\x8d\xc3\x32\x55\x53\x39\x4e\xaf\xdb\x8c\xf0\x95\x9c\xd4\x68\xbb\xe2\xce\x51\x88\x55\xaa\x97\x2d\xbf\x5d\x54\x76\x30\x16\x4b\x9e\x68\xbf\x20\x84\x72\xc8\xc2\x4d\xd7\xc1\xdb\xd5\x93\x9c\x20\x40\x96\xfc\x97\x8a\xfc\xd0\xee\x78\xc3\xab\x96\xd7\x7b\x80\x61\x29\xa6\x56\xf4\xe8\xf5\xa6\x75\xaa\x17\xef\x10\x76\x34\x74\x12\x41\x2e\x35\xcb\x04\x80\xea\x88\x26\x9e\xe9\xd8\xfb\xd8\xdf\x9a\x6a\x6b\x02\x9e\xa7\xdc\x96\x19\x43\x87\x95\xa6\xb7\x91\x47\xbc\x2a\xb0\x9f\x80\x8a\x4d\x38\x54\x7e\xc8\xa9\xce\x0f\xf2\xb3\x8b\x05\x69\x9b\x52\xa7\xba\xec\x3f\x8d\x32\x19\xcb\x70\x3d\x4d\x67\x8c\x6d\x73\x5d\xf3\x92\xff\xd2\xcb\xa3\xea\x73\xa4\x66\xb9\xda\xc9\xbf\x3c\xcc\x96\x4d\x5a\xa8\x54\x52\x21\x6d\xe5\x48\x2d\x16\x7c\xff\x20\xb2\x25\x06\x5f\x4f\x58\x29\x3f\xde\xf0\x1e\xa5\x15\x9c\xba\x1d\x79\xee\xda\x99\xf1\xd7\x18\x0b\x75\x27\x6f\xb7\x48\x8a\x7f\xa3\x13\x06\x06\xcd\x64\x4e\xf3\x1d\xd6\x22\xbc\x91\x9f\xa6\xe2\xa6\x13\x90\x6d\x24\x67\xce\x7f\x56\xc1\x22\x4e\x4e\x13\xdd\xb8\xa7\x97\x93\xcf\x75\x04\x09\xb5\x57\x7b\xfb\xb1\x1d\x84\x0a\x09\x6f\x1d\x64\x07\xfe\x6f\x61\x11\xa8\x36\x8e\x48\x94\x41\xf0\x36\x8a\x37\xd4\xe4\xd9\x62\xc8\x28\xcc\x74\xf8\xfb\x13\x2e\xbc\x0e\x84\x50\xf5\x66\xed\x23\xbe\xcc\xb6\xea\x5e\xfb\x80\xb1\x2c\xe6\x28\x3a\xcc\xf9\xc7\x75\x3a\x36\xa2\x12\xe4\xa5\xbf\x9f\x6d\xd1\x45\xbb\xe7\xb3\x84\x4e\x6c\x08\x85\x1a\xed\x04\xbb\x27\xa2\x91\xc1\xb9\xc9\xa7\xc9\x77\xb8\x88\x06\x42\xcd\x18\x9a\xc3\x3a\xb2\xd9\x9b\x23\x06\xe9\x57\xff\xce\x32\x68\x43\x04\xd4\x76\xf4\x96\x25\xaa\x09\x09\x31\x91\x2c\x70\xe9\x16\xbc\xb2\x1d\x66\xfd\x85\x6d\x8a\x9a\x3f\x98\xef\x22\x35\xe5\x98\xc2\xf2\x5a\x31\x18\xaf\x6b\xf2\x3a\x7a\xd9\xbd\x7b\x81\x9c\xc7\xcb\x0e\x19\xc0\x99\x6f\x21\x28\xdc\xd4\x3a\x8a\x92\xfe\x8b\x33\x3d\x21\x4e\xae\xda\xfd\x05\x29\xd7\x26\xb7\xbe\x9e\x32\x03\xe7\x9e\x79\x78\xab\xef\xb5\x65\xaa\x43\x5b\xbb\x06\x84\xbb\x0e\x83\x92\xaa\x2b\x37\x4d\x75\xd2\xb1\x26\x99\x47\x0e\x43\xa6\xa1\xc0\x81\x5e\x44\xef\xb3\x3c\xdf\xf3\xb8\xef\xb3\x1c\xf2\xe9\xd5\x60\x42\x97\x90\x05\xd3\x26\xc8\xf6\x48\xcc\xac\x8e\xde\x6b\x1b\x52\xd6\x6c\x7f\x94\x05\x56\x87\x72\xd4\xc2\x02\x1c\xb4\x35\x86\xcd\xc5\x4f\x24\xd6\x5c\xac\xc7\x9d\xad\xa8\xa2\xe6\xae\x57\xa4\xa2\xcc\x65\x49\x06\x8d\x0f\xfd\xc7\xf0\x08\x8e\x13\x16\x0f\xd6\x7d\xda\x88\x4c\x3a\x62\xf7\x84\x85\x88\x54\x29\xa1\x81\x67\x9f\x1a\x40\x55\x90\xe7\x15\xa1\x00\x71\x75\x1e\xf0\x8d\x8f\x70\x0c\x2f\x6b\x52\xcd\x35\x7c\x70\xa6\xf1\xc2\x75\x9e\x31\x29\x8b\x1f\x7a\x61\x74\xa4\xbb\xb5\x66\xc3\x17\x0d\x02\xf5\x79\x53\x44\x79\x9c\xde\xa1\x81\x56\xa5\x09\x03\x62\xf1\xce\x9d\x17\x17\x5d\x22\xa8\x99\x59\x4f\x73\xdf\xb3\xb6\xa9\x1c\xd1\xcc\x7f\x69\xee\x4c\xbf\xaa\x58\xd2\x5d\xfc\xf9\x1c\xf8\x86\x6a\x2e\x11\xb3\xce\xcc\xbc\x14\x43\x54\x84\xd8\x6f\xa4\x54\xe7\xe0\xef\x83\xd5\x6a\x91\x12\xfc\x3f\x20\x5a\xee\xcf\x3a\x25\xa9\xc6\x5d\x60\x28\x7b\xd6\x87\x0c\x1d\xbc\xb8\x1a\xdc\x9b\xac\x06\x6e\x3f\xfa\x46\x34\xd8\xbb\x78\xe6\x35\xa2\x5c\x8f\x35\xf0\xf8\x7c\xb0\x39\xcf\x2e\x8a\x1e\x75\x46\x36\x31\xa1\xe9\xc7\x79\x6b\x12\xd8\xd4\x41\x5c\x71\x11\xfd\xcf\xc6\xd0\x5c\x26\x9a\xd3\x86\xb8\xc2\x7f\xc0\xdc\x5d\x7a\xc7\xfb\x71\x59\xc4\x10\xf3\x5e\x44\xa3\x74\x00\xe0\xff\xd9\x01\x9b\x03\x83\xfb\x94\x25\x09\xac\x79\x33\x12\x5a\x46\xf3\x14\x77\xeb\x6a\x64\xc0\x91\x79\x26\xb5\x77\x47\x99\x7a\xfe\xba\xcd\xcc\x11\x83\xad\xd3\x85\x30\x23\x03\xcd\xbd\x6d\xdc\x07\x34\xe5\xf8\x3a\x6b\x27\xf3\x1c\x09\x0b\x14\xf3\xac\xbc\xf7\x21\xd8\x28\xc2\x69\x8e\x68\x6e\x9f\xbc\x39\x94\x40\xea\x23\xfa\x42\xe7\xeb\x08\xe1\x89\xd6\xd7\x3e\xeb\x8e\x0b\xf9\xc1\xe5\xff\x43\xd1\xc2\xae\xc3\xf6\xb5\x94\xf1\x40\x9d\x98\xfb\xe7\x64\xbe\xa2\x20\xb9\x71\x97\xf2\xcf\x3d\x65\x2a\x59\xf8\xc8\xdf\xf1\x5c\xe4\xcd\x47\x80\xa3\x19\x0b\x7c\x59\x08\xee\x83\xa3\xe4\x47\x07\xb5\x0b\x00\x30\x65\x69\xf8\x40\x2f\x41\xb5\x04\xab\x0b\xb8\x9b\x1a\x38\xe8\xba\xc1\xcf\x6a\xf6\x16\x9a\x28\x6d\xfc\xb1\x58\xa8\x0c\xdb\xad\x5f\x2b\x96\x03\x5b\x0c\xc8\x6b\x5e\x2b\x92\x1e\x5d\x2f\x5a\xe4\x1a\x8b\xe0\x93\xb0\x4f\x3f\x87\xa5\xb6\x38\xff\x6c\x6b\x30\x4a\x94\x6d\x95\x4c\x33\x28\xca\x19\xcf\x30\x90\x6b\xd2\x6f\xb4\xc6\x4c\x10\xd0\x78\x4f\xe0\x0c\xdb\x02\xf4\x45\xcf\x54\x55\xde\x24\x3c\x20\x17\x8f\x60\x40\x7d\x4f\x77\xa7\xc0\x42\x54\x7e\x4c\x10\x9b\x9c\x16\xaa\x4c\x56\xc9\x3a\xca\x85\xfc\x61\x13\x32\xe4\xe6\x78\x7a\x13\xaf\x72\xb1\xf9\xd0\x4c\x08\x34\x3a\x96\x16\x54\x76\xa6\x22\x17\xa2\xb2\x36\x63\x2b\x4c\x4f\xbf\x56\xdd\x20\xa0\x7a\x4e\x2b\x55\x73\x61\x10\x65\x23\xdb\xf2\x81\xda\x5f\xc6\xdc\x95\x27\x8f\xca\x70\xfb\x19\xe5\x00\x54\xe0\x9f\x3a\x9a\x63\x3c\x2a\xfe\x2e\xe9\x23\x6d\xc4\x26\x2f\x0d\x57\x42\x06\xd7\x30\xc9\xb4\xb1\x57\x05\x60\x33\x84\x06\x89\x3b\xb3\x9b\xa7\x94\x57\xe8\x74\x8e\x13\x0c\xfd\x43\xa4\xee\x07\x8e\xa1\x89\xfa\x7a\xcd\x78\x9d\x93\xf9\xe4\x2c\x32\x35\xe9\xb0\xe1\x4c\xf2\x80\x73\xc3\x83\xe8\x87\xd5\x34\x00\x20\x1d\x5a\x79\x63\xa1\x94\x71\xd6\x77\xc2\x3a\x6c\x83\x32\x9f\x74\xb1\xd6\x33\x77\x7a\x4a\x3d\xe1\x26\x39\xb3\x4a\x2e\x65\x8b\x20\x5c\xda\xb1\x35\x6f\xf2\x2b\xac\xed\x85\x77\x8c\x00\xac\xed\xa9\x64\x0f\x2a\x5c\x2c\xc9\xa9\x35\xba\x51\x03\x7d\x74\xdb\x53\x73\x64\x06\xe9\xa3\x76\x83\xb7\x69\x5b\xb7\xef\xf5\xed\x3f\xf3\x49\x2d\x45\xc2\xa0\x39\x5e\xa2\x1e\xa0\x3c\x71\xda\x8f\x64\x55\x51\xbe\x85\x61\xc2\xe3\xe4\xc9\xa5\xbf\xe7\xf1\x20\x7c\x40\x71\x7d\x2f\x7b\xa3\xf8\x3d\x05\x21\x6b\xd0\x54\xd3\x1c\xb8\x58\xcf\xc4\x29\xf1\x76\x40\x38\xc5\xf6\xa8\x47\x0b\x9f\x5f\x5f\xb0\xb6\x0c\x02\xe6\xe9\xc9\xc8\xb8\x6e\x09\xc4\xa0\x72\xec\xec\x58\x48\x43\x9b\xfd\xdd\x96\x5e\x28\x93\x97\x3a\x91\xb2\x77\x1e\xf1\x26\xcf\x87\xaa\x39\xaa\x94\xb5\x01\x9a\x3b\x24\x57\x5c\x23\x01\x23\x35\x0b\x0d\x43\x44\xf7\x55\x9f\x1b\x99\x3d\x3e\xc6\x02\xb1\xe4\xb7\x93\xcd\xd3\xa8\x40", 4096); *(uint8_t*)0x10001195 = 0; *(uint8_t*)0x10001196 = 1; *(uint8_t*)0x10001197 = 0; *(uint8_t*)0x10001198 = 0xc2; *(uint8_t*)0x10001199 = 4; *(uint32_t*)0x1000119a = htobe32(0x1000); memcpy((void*)0x100011a2, "\xad\xaa\xbb\x00\x82\x4d\x16\xa6\x4e\x24\xb4\x85\x12\xc1\xe0\x83\x73\xc7\xf2\xd5\x4b\x0e\x66\x01\xae\xb2\x70\xd7\xff\x20\xd7\x49\x3c\x40\xfe\xa3\x8e\x08\xea\xa2\x4b\xeb\x45\x52\x16\x3e\xa2\xa0\xdc\x56\xef\xba\x4d\xc4\x8e\xb4\xbe\x63\xca\x1b\xf6\x5a\x0a\xdd\x60\x3f\xe1\x2c\x38\x60\x4a\x80\xb3\xe8\xe8\x76\x41\xe4\xf9\x7d\x60\xf9\x73\xac\x1c\xd4\xb0\xce\xcc\xa6\xf6\x0f\x7e\xd0\xea\x52\xd3\xbe\x08\xf3\x3b\x1e\x25\x8e\x03\x02\xd1\xa6\x97\x7f\x57\xad\x7b\x53\x89\x8d\x87\xbe\x8a\x6d\x74\x5b\xe8\x54\x5f\xe5\x80\x23\x8b\xe2\x49\x6e\xac\xf2\xf9\xbc\x57\x89\xf6\x32\xaa\xfa\x5a\x6b\xeb\xe7\xf2\x5d\x74\x3b\x8c\xd5\x80\x6d\x46\x1c\xb7\x80\x9c\x7e\x45\x9a\xd9\xce\x8b\x5c\x62\x50\xc6\xb4\x6f\x5f\xfc\x4c\x08\x1e\x03\xb0\x96\x2c\x78\x38\x32\x62\xd8\x92\x9f\x0c\xf5\xab\xe4\xde\xd7\x1c\xb6\x19\x59\x34\x8b\xdd\xbe\x8b\xec\x82\xbc\x65\xa7\x28\x50\x76\xff\xd1\xdc\x2e\x7d\xe9\x75\x5e\xce\xd2\x8e\xad\x51\x66\x4d\xd7\x21\xe0\x6a\xd6\x09\x7f\xe6\x4b\xbf\xf3\x73\xcd\x4d\x7a\xff", 241); syz_emit_ethernet(0x1293, 0x10000000); break; case 11: memcpy((void*)0x100012c0, "\x2e\x66\x0f\xde\x4f\x3f\xc4\xc2\xf9\x29\xc9\xc4\xe1\xe9\x5c\x47\xbf\xc4\xc3\xdd\xcf\x51\xb8\x25\x66\x26\x0f\x0f\xc6\x97\xc4\xe2\x9d\x03\x76\x00\x0f\x94\x34\x26\xc4\xe1\x35\x55\x73\x0a\x0f\xa4\x47\xfb\x00\xc4\xc1\x33\x7c\x90\x0b\x00\x00\x00", 60); syz_execute_func(0x100012c0); break; case 12: syz_extract_tcp_res(0x10001300, 0x3fe0000, 0x40); break; } } int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); use_temporary_dir(); do_sandbox_none(); return 0; } :522:11: error: use of undeclared identifier 'SYS_close_range' syscall(SYS_close_range, (intptr_t)r[1], (intptr_t)r[0], 0); ^ 1 error generated. compiler invocation: clang [-o /tmp/syz-executor970244811 -DGOOS_freebsd=1 -DGOARCH_386=1 -DHOSTGOOS_freebsd=1 -x c - -m32 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -static -lc++ -Wno-overflow] --- FAIL: TestGenerate/freebsd/386/6 (1.79s) csource_test.go:121: --- FAIL: TestGenerate/freebsd/386/5 (1.50s) csource_test.go:121: --- FAIL: TestGenerate/freebsd/386/2 (1.61s) csource_test.go:121: --- FAIL: TestGenerate/freebsd/386/1 (1.25s) csource_test.go:121: FAIL FAIL github.com/google/syzkaller/pkg/csource 15.057s ok github.com/google/syzkaller/pkg/db (cached) ? github.com/google/syzkaller/pkg/debugtracer [no test files] ok github.com/google/syzkaller/pkg/email (cached) ? github.com/google/syzkaller/pkg/gce [no test files] ? github.com/google/syzkaller/pkg/gcs [no test files] ? github.com/google/syzkaller/pkg/hash [no test files] ok github.com/google/syzkaller/pkg/host 1.609s ? github.com/google/syzkaller/pkg/html [no test files] ok github.com/google/syzkaller/pkg/ifuzz (cached) ? github.com/google/syzkaller/pkg/ifuzz/iset [no test files] ? github.com/google/syzkaller/pkg/ifuzz/powerpc [no test files] ? github.com/google/syzkaller/pkg/ifuzz/powerpc/generated [no test files] ? github.com/google/syzkaller/pkg/ifuzz/x86 [no test files] ? github.com/google/syzkaller/pkg/ifuzz/x86/gen [no test files] ? github.com/google/syzkaller/pkg/ifuzz/x86/generated [no test files] ok github.com/google/syzkaller/pkg/instance 1.803s ok github.com/google/syzkaller/pkg/ipc 6.847s ? github.com/google/syzkaller/pkg/ipc/ipcconfig [no test files] ? github.com/google/syzkaller/pkg/kcidb [no test files] ok github.com/google/syzkaller/pkg/kconfig 0.054s ok github.com/google/syzkaller/pkg/kd (cached) ok github.com/google/syzkaller/pkg/log (cached) ok github.com/google/syzkaller/pkg/mgrconfig 0.107s ok github.com/google/syzkaller/pkg/osutil (cached) ok github.com/google/syzkaller/pkg/report 3.761s ok github.com/google/syzkaller/pkg/repro 0.262s ? github.com/google/syzkaller/pkg/rpctype [no test files] ok github.com/google/syzkaller/pkg/runtest 60.093s ok github.com/google/syzkaller/pkg/serializer (cached) ? github.com/google/syzkaller/pkg/signal [no test files] ok github.com/google/syzkaller/pkg/symbolizer 0.242s ok github.com/google/syzkaller/pkg/vcs 13.149s ok github.com/google/syzkaller/prog (cached) ok github.com/google/syzkaller/prog/test (cached) ? github.com/google/syzkaller/sys [no test files] ? github.com/google/syzkaller/sys/akaros [no test files] ? github.com/google/syzkaller/sys/akaros/gen [no test files] ? github.com/google/syzkaller/sys/freebsd [no test files] ? github.com/google/syzkaller/sys/freebsd/gen [no test files] ? github.com/google/syzkaller/sys/fuchsia [no test files] ? github.com/google/syzkaller/sys/fuchsia/fidlgen [no test files] ? github.com/google/syzkaller/sys/fuchsia/gen [no test files] ? github.com/google/syzkaller/sys/fuchsia/layout [no test files] ok github.com/google/syzkaller/sys/linux (cached) ? github.com/google/syzkaller/sys/linux/gen [no test files] ? github.com/google/syzkaller/sys/netbsd [no test files] ? github.com/google/syzkaller/sys/netbsd/gen [no test files] ok github.com/google/syzkaller/sys/openbsd (cached) ? github.com/google/syzkaller/sys/openbsd/gen [no test files] ? github.com/google/syzkaller/sys/syz-extract [no test files] ? github.com/google/syzkaller/sys/syz-sysgen [no test files] ? github.com/google/syzkaller/sys/targets [no test files] ? github.com/google/syzkaller/sys/test [no test files] ? github.com/google/syzkaller/sys/test/gen [no test files] ? github.com/google/syzkaller/sys/trusty [no test files] ? github.com/google/syzkaller/sys/trusty/gen [no test files] ? github.com/google/syzkaller/sys/windows [no test files] ? github.com/google/syzkaller/sys/windows/gen [no test files] ok github.com/google/syzkaller/syz-ci 0.236s ok github.com/google/syzkaller/syz-fuzzer (cached) ok github.com/google/syzkaller/syz-hub (cached) ok github.com/google/syzkaller/syz-hub/state (cached) ok github.com/google/syzkaller/syz-manager 1.463s ? github.com/google/syzkaller/tools/syz-benchcmp [no test files] ? github.com/google/syzkaller/tools/syz-bisect [no test files] ? github.com/google/syzkaller/tools/syz-check [no test files] ? github.com/google/syzkaller/tools/syz-cover [no test files] ? github.com/google/syzkaller/tools/syz-crush [no test files] ? github.com/google/syzkaller/tools/syz-db [no test files] ? github.com/google/syzkaller/tools/syz-execprog [no test files] ? github.com/google/syzkaller/tools/syz-expand [no test files] ? github.com/google/syzkaller/tools/syz-fmt [no test files] ? github.com/google/syzkaller/tools/syz-hubtool [no test files] ? github.com/google/syzkaller/tools/syz-kcidb [no test files] ? github.com/google/syzkaller/tools/syz-kconf [no test files] ok github.com/google/syzkaller/tools/syz-linter 3.189s ? github.com/google/syzkaller/tools/syz-make [no test files] ? github.com/google/syzkaller/tools/syz-minconfig [no test files] ? github.com/google/syzkaller/tools/syz-mutate [no test files] ? github.com/google/syzkaller/tools/syz-prog2c [no test files] ? github.com/google/syzkaller/tools/syz-reporter [no test files] ? github.com/google/syzkaller/tools/syz-repro [no test files] ? github.com/google/syzkaller/tools/syz-reprolist [no test files] ? github.com/google/syzkaller/tools/syz-runtest [no test files] ? github.com/google/syzkaller/tools/syz-showprio [no test files] ? github.com/google/syzkaller/tools/syz-stress [no test files] ? github.com/google/syzkaller/tools/syz-symbolize [no test files] ? github.com/google/syzkaller/tools/syz-testbuild [no test files] ? github.com/google/syzkaller/tools/syz-trace2syz [no test files] ok github.com/google/syzkaller/tools/syz-trace2syz/parser (cached) ok github.com/google/syzkaller/tools/syz-trace2syz/proggen (cached) ? github.com/google/syzkaller/tools/syz-tty [no test files] ? github.com/google/syzkaller/tools/syz-upgrade [no test files] ? github.com/google/syzkaller/tools/syz-usbgen [no test files] ok github.com/google/syzkaller/vm 8.138s ? github.com/google/syzkaller/vm/adb [no test files] ? github.com/google/syzkaller/vm/bhyve [no test files] ? github.com/google/syzkaller/vm/gce [no test files] ? github.com/google/syzkaller/vm/gvisor [no test files] ok github.com/google/syzkaller/vm/isolated 0.088s ? github.com/google/syzkaller/vm/kvm [no test files] ? github.com/google/syzkaller/vm/odroid [no test files] ? github.com/google/syzkaller/vm/qemu [no test files] ok github.com/google/syzkaller/vm/vmimpl 0.135s ? github.com/google/syzkaller/vm/vmm [no test files] ? github.com/google/syzkaller/vm/vmware [no test files] FAIL