program: ioctl$sock_ipv4_tunnel_SIOCDELTUNNEL(0xffffffffffffffff, 0x89f2, &(0x7f00000000c0)={'syztnl2\x00', &(0x7f0000000040)={'syztnl0\x00', 0x0, 0x0, 0x0, 0x0, 0x0, {{0xf, 0x4, 0x0, 0x0, 0x3c, 0x68, 0x0, 0x0, 0x0, 0x0, @multicast1, @local, {[@end, @timestamp_addr={0x44, 0x24, 0x0, 0x1, 0x0, [{@multicast2, 0xfffffffd}, {@loopback}, {@remote, 0x10000000}, {@rand_addr=0x64010100, 0x4}]}]}}}}}) syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") syz_emit_ethernet(0x46, &(0x7f0000000000)={@broadcast, @remote, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "120008", 0x10, 0x3a, 0xff, @remote, @mcast2, {[], @ndisc_ra={0x86, 0x0, 0x0, 0x1, 0x0, 0x2}}}}}}, 0x0) syz_emit_ethernet(0x5e, &(0x7f0000002e40)={@local, @dev, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "7428dd", 0x28, 0x3a, 0xff, @remote, @mcast2, {[], @ndisc_na={0x89, 0x0, 0x0, 0x0, '\x00', @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}, [{0x0, 0x2, "122b472e41e24b11f34b608816e5"}]}}}}}}, 0x0) syz_emit_ethernet(0x5e, &(0x7f00000005c0)={@local, @dev={'\xaa\xaa\xaa\xaa\xaa', 0xfc}, @void, {@ipv6={0x86dd, @icmpv6={0x0, 0x6, "7428dd", 0x28, 0x3a, 0xff, @local, @mcast2, {[], @ndisc_na={0x89, 0x0, 0x0, 0x0, '\x00', @initdev={0xfe, 0x88, '\x00', 0x0, 0x0}, [{0x0, 0x2, "122b472e41e24b11f34b608816e5"}]}}}}}}, 0x0) r0 = creat(&(0x7f0000000000)='./bus\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r1, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x70000}]) ioctl$sock_SIOCGIFINDEX_80211(0xffffffffffffffff, 0x8933, &(0x7f0000000080)={'wlan0\x00'}) r2 = socket$phonet_pipe(0x23, 0x5, 0x2) ioctl$sock_proto_private(r2, 0x8b20, &(0x7f0000000080)) syz_mount_image$btrfs(&(0x7f00000055c0), &(0x7f0000005600)='./file0\x00', 0x0, &(0x7f0000005640), 0x1, 0x559e, &(0x7f0000005680)="$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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPyXvTsPk6q6EwZ8uumFbpruNvoIar6EYNh8pGkg4hITUQwkaLSJe4wKQqNIiyiQCEE/XOJuPk38RmNmDIyJWxBxGbfRiKJohESigyOKS6IO7ga3jMsj83RXnaLqVpddCCjtvO8fXafqd9ZbS9e599a5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADA56ux/48fm73ghSUf/vjIvd4+f/FFlx6wY8/5Y+5/640eB77z1iEjlz63dHzvcduN6DP/2ZKjZj6z89khTGorV5IqXnJA9cgeAy8f/dNbVs/c99aaix6rTNdbnr7dLid3bPXD2hDmZj1SExNv1rbeWRc4cJ8FM8taE8tqQ9g+OzD59MlbtCZ+VxtCv+zAPUcM6NGaOD1Z4q5n9nqxNXFUMvDdgV96rzWxezpQkuzuP3dPdbck2d0Lu4dQlxXIdPe47rlVZdoYlQ6UJtu4uibVRgzUxKKX1aTaiIGWWGJS1xAGlYXQJVnVHytTVXVJVnVnZaqqLsmqTq0MYfcQQlmyqmcqUlWVJUf+SEWqqhjo2fuaNX1bE3MrQhiUHXj88Hk7tSZOTAQyjf+gIoSvtr5kko3fVJ5qvDzZ+CXlIXwlhFCRLPFOWapERbLEX8tC2DIrkGn82LIQZga+EOKHz4TsB6fNnDV5XEtL80mbMFGRbqsqTJzU0tww/oSWCZWJPhVSkpVee9qnH/tTa2aPb7396Du964tJl6XLlbd1eUh5zt2hm3vvY7+qsytZ93zk1R/zV4RuoeuMac0nNZw8bvr0kwan/habfUjqb5d0NLWtBneWbdUvu5JB04+fOmjazFkDJx0/7pjmY5qnDB7S2LjrLkOHDmkc1Dqq9N+NMdR5n/1Qty3LquSz+ACQkJDobInSnE+3xs39gzzvi/66jpaHyrYP6LxpRXaWkrZRboxB7/kpR/xpvqd0OKLBeROHvCxDOs4yNG8ysS5LVSpL2/e6vMlhdk2lbZs03i8NDQ1dCm2H+ty72Zv39Q3YvCvTm67YNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8DztwIAAAAAAA5P/aCFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVXYgQMBAAAAACD/10aoqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwg4cCwAAAAAI87cOo2cDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBLAQAA//8d6cf4") setsockopt$IP_VS_SO_SET_EDIT(0xffffffffffffffff, 0x0, 0x483, &(0x7f00000001c0)={0x2, @loopback, 0x4e20, 0x0, 'dh\x00', 0x1, 0x7, 0x33}, 0x2c) r3 = openat(0xffffffffffffff9c, &(0x7f0000000100)='./file1\x00', 0x42, 0x1ff) sendto$inet_nvme_icreq_pdu(r0, &(0x7f0000000140)={{0x0, 0x8}, 0x0, 0x0, 0x3, 0x1}, 0x80, 0x0, 0x0, 0x0) ioctl$BTRFS_IOC_INO_PATHS(r3, 0xc0389423, 0x0) [ 75.310417][ T5301] Bluetooth: hci0: command tx timeout [ 75.397838][ T5321] loop0: detected capacity change from 0 to 1024 [ 75.486702][ T5321] warning: `syz.0.0' uses wireless extensions which will stop working for Wi-Fi 7 hardware; use nl80211 [ 75.531944][ T14] hfsplus: b-tree write err: -5, ino 3 [ 75.887142][ T5321] [ 75.888149][ T5321] ====================================================== [ 75.891080][ T5321] WARNING: possible circular locking dependency detected [ 75.894052][ T5321] syzkaller #0 Not tainted [ 75.895978][ T5321] ------------------------------------------------------ [ 75.898928][ T5321] syz.0.0/5321 is trying to acquire lock: [ 75.901311][ T5321] ffff88803ecbe0b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x168/0x290 [ 75.905414][ T5321] [ 75.905414][ T5321] but task is already holding lock: [ 75.908483][ T5321] ffff888012627048 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_get_block+0x398/0x15d0 [ 75.912953][ T5321] [ 75.912953][ T5321] which lock already depends on the new lock. [ 75.912953][ T5321] [ 75.917525][ T5321] [ 75.917525][ T5321] the existing dependency chain (in reverse order) is: [ 75.922505][ T5321] [ 75.922505][ T5321] -> #1 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}: [ 75.927052][ T5321] lock_acquire+0x120/0x360 [ 75.929471][ T5321] __mutex_lock+0x187/0x1350 [ 75.931805][ T5321] hfsplus_file_extend+0x1f8/0x1ba0 [ 75.934290][ T5321] hfsplus_bmap_reserve+0x122/0x500 [ 75.936705][ T5321] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 75.939511][ T5321] __hfsplus_ext_cache_extent+0x89/0xe30 [ 75.942241][ T5321] hfsplus_file_extend+0x437/0x1ba0 [ 75.944820][ T5321] hfsplus_get_block+0x40a/0x15d0 [ 75.947284][ T5321] __block_write_begin_int+0x6b5/0x1900 [ 75.950022][ T5321] cont_write_begin+0x789/0xb50 [ 75.952351][ T5321] hfsplus_write_begin+0x66/0xb0 [ 75.954722][ T5321] generic_perform_write+0x2c5/0x900 [ 75.957339][ T5321] generic_file_write_iter+0x117/0x550 [ 75.959985][ T5321] aio_write+0x535/0x7a0 [ 75.961953][ T5321] io_submit_one+0x78b/0x1310 [ 75.964064][ T5321] __se_sys_io_submit+0x185/0x2f0 [ 75.966348][ T5321] do_syscall_64+0xfa/0xfa0 [ 75.968378][ T5321] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.970840][ T5321] [ 75.970840][ T5321] -> #0 (&tree->tree_lock/1){+.+.}-{4:4}: [ 75.973960][ T5321] validate_chain+0xb9b/0x2140 [ 75.976191][ T5321] __lock_acquire+0xab9/0xd20 [ 75.978127][ T5321] lock_acquire+0x120/0x360 [ 75.980364][ T5321] __mutex_lock+0x187/0x1350 [ 75.982466][ T5321] hfsplus_find_init+0x168/0x290 [ 75.984352][ T5321] hfsplus_get_block+0x8dc/0x15d0 [ 75.986379][ T5321] block_read_full_folio+0x29f/0x830 [ 75.988758][ T5321] read_pages+0x35d/0x580 [ 75.990775][ T5321] page_cache_ra_unbounded+0x75e/0x9a0 [ 75.993131][ T5321] filemap_get_pages+0x468/0x1de0 [ 75.995558][ T5321] filemap_read+0x3f6/0x11a0 [ 75.997850][ T5321] __kernel_read+0x4cf/0x960 [ 76.000188][ T5321] integrity_kernel_read+0x89/0xd0 [ 76.002647][ T5321] ima_calc_file_hash+0x85e/0x16f0 [ 76.005020][ T5321] ima_collect_measurement+0x428/0x8f0 [ 76.007530][ T5321] process_measurement+0x1121/0x1a40 [ 76.010096][ T5321] ima_file_check+0xd7/0x120 [ 76.012496][ T5321] security_file_post_open+0xbb/0x290 [ 76.015667][ T5321] path_openat+0x2f26/0x3830 [ 76.017926][ T5321] do_filp_open+0x1fa/0x410 [ 76.020207][ T5321] do_sys_openat2+0x121/0x1c0 [ 76.022559][ T5321] __x64_sys_openat+0x138/0x170 [ 76.024735][ T5321] do_syscall_64+0xfa/0xfa0 [ 76.026915][ T5321] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.029592][ T5321] [ 76.029592][ T5321] other info that might help us debug this: [ 76.029592][ T5321] [ 76.033947][ T5321] Possible unsafe locking scenario: [ 76.033947][ T5321] [ 76.037302][ T5321] CPU0 CPU1 [ 76.039737][ T5321] ---- ---- [ 76.041944][ T5321] lock(&HFSPLUS_I(inode)->extents_lock); [ 76.044402][ T5321] lock(&tree->tree_lock/1); [ 76.047504][ T5321] lock(&HFSPLUS_I(inode)->extents_lock); [ 76.051060][ T5321] lock(&tree->tree_lock/1); [ 76.053095][ T5321] [ 76.053095][ T5321] *** DEADLOCK *** [ 76.053095][ T5321] [ 76.056406][ T5321] 3 locks held by syz.0.0/5321: [ 76.058704][ T5321] #0: ffff8880430925b8 (&ima_iint_mutex_key[depth]){+.+.}-{4:4}, at: process_measurement+0x74b/0x1a40 [ 76.063782][ T5321] #1: ffff8880126273d8 (mapping.invalidate_lock#3){.+.+}-{4:4}, at: page_cache_ra_unbounded+0x1df/0x9a0 [ 76.068685][ T5321] #2: ffff888012627048 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_get_block+0x398/0x15d0 [ 76.073423][ T5321] [ 76.073423][ T5321] stack backtrace: [ 76.075990][ T5321] CPU: 0 UID: 0 PID: 5321 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 76.076008][ T5321] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 76.076016][ T5321] Call Trace: [ 76.076024][ T5321] [ 76.076030][ T5321] dump_stack_lvl+0x189/0x250 [ 76.076053][ T5321] ? __pfx_dump_stack_lvl+0x10/0x10 [ 76.076069][ T5321] ? __pfx__printk+0x10/0x10 [ 76.076081][ T5321] ? print_lock_name+0xde/0x100 [ 76.076091][ T5321] print_circular_bug+0x2ee/0x310 [ 76.076107][ T5321] check_noncircular+0x134/0x160 [ 76.076120][ T5321] validate_chain+0xb9b/0x2140 [ 76.076134][ T5321] ? _raw_spin_unlock_irqrestore+0xad/0x110 [ 76.076148][ T5321] ? __pfx__raw_spin_unlock_irqrestore+0x10/0x10 [ 76.076164][ T5321] __lock_acquire+0xab9/0xd20 [ 76.076176][ T5321] ? hfsplus_find_init+0x168/0x290 [ 76.076187][ T5321] lock_acquire+0x120/0x360 [ 76.076197][ T5321] ? hfsplus_find_init+0x168/0x290 [ 76.076215][ T5321] ? ima_file_check+0xd7/0x120 [ 76.076232][ T5321] ? path_openat+0x2f26/0x3830 [ 76.076244][ T5321] ? do_sys_openat2+0x121/0x1c0 [ 76.076258][ T5321] __mutex_lock+0x187/0x1350 [ 76.076274][ T5321] ? hfsplus_find_init+0x168/0x290 [ 76.076286][ T5321] ? hfsplus_find_init+0x168/0x290 [ 76.076297][ T5321] ? __pfx___mutex_lock+0x10/0x10 [ 76.076313][ T5321] ? rcu_is_watching+0x15/0xb0 [ 76.076326][ T5321] ? trace_kmalloc+0x1f/0xd0 [ 76.076338][ T5321] ? __kmalloc_noprof+0x432/0x7f0 [ 76.076350][ T5321] ? hfsplus_find_init+0x8c/0x290 [ 76.076361][ T5321] hfsplus_find_init+0x168/0x290 [ 76.076372][ T5321] hfsplus_get_block+0x8dc/0x15d0 [ 76.076388][ T5321] ? __pfx_hfsplus_get_block+0x10/0x10 [ 76.076402][ T5321] ? _raw_spin_unlock+0x28/0x50 [ 76.076416][ T5321] block_read_full_folio+0x29f/0x830 [ 76.076429][ T5321] ? __pfx_hfsplus_get_block+0x10/0x10 [ 76.076442][ T5321] ? __pfx_hfsplus_read_folio+0x10/0x10 [ 76.076454][ T5321] read_pages+0x35d/0x580 [ 76.076470][ T5321] ? __pfx_read_pages+0x10/0x10 [ 76.076485][ T5321] ? filemap_add_folio+0x35f/0x540 [ 76.076500][ T5321] page_cache_ra_unbounded+0x75e/0x9a0 [ 76.076518][ T5321] filemap_get_pages+0x468/0x1de0 [ 76.076539][ T5321] ? __pfx_filemap_get_pages+0x10/0x10 [ 76.076554][ T5321] ? __lock_acquire+0xab9/0xd20 [ 76.076565][ T5321] ? __pfx___might_resched+0x10/0x10 [ 76.076580][ T5321] filemap_read+0x3f6/0x11a0 [ 76.076596][ T5321] ? kernel_text_address+0xa5/0xe0 [ 76.076612][ T5321] ? __kernel_text_address+0xd/0x40 [ 76.076629][ T5321] ? __pfx_filemap_read+0x10/0x10 [ 76.076649][ T5321] ? generic_file_read_iter+0x8f/0x510 [ 76.076664][ T5321] ? __asan_memset+0x22/0x50 [ 76.076676][ T5321] ? iov_iter_kvec+0xb8/0x180 [ 76.076687][ T5321] __kernel_read+0x4cf/0x960 [ 76.076702][ T5321] ? __pfx___kernel_read+0x10/0x10 [ 76.076719][ T5321] integrity_kernel_read+0x89/0xd0 [ 76.076734][ T5321] ? __pfx_integrity_kernel_read+0x10/0x10 [ 76.076747][ T5321] ? __kmalloc_cache_noprof+0x3d5/0x6f0 [ 76.076760][ T5321] ? __asan_memcpy+0x40/0x70 [ 76.076772][ T5321] ima_calc_file_hash+0x85e/0x16f0 [ 76.076786][ T5321] ? __pfx_ima_calc_file_hash+0x10/0x10 [ 76.076803][ T5321] ? stack_depot_save_flags+0x41b/0x860 [ 76.076822][ T5321] ? kasan_save_track+0x4f/0x80 [ 76.076836][ T5321] ? kasan_save_track+0x3e/0x80 [ 76.076848][ T5321] ? make_vfsgid+0x49/0xa0 [ 76.076859][ T5321] ? generic_fillattr+0x63d/0x9a0 [ 76.076874][ T5321] ? hfsplus_getattr+0x235/0x2f0 [ 76.076887][ T5321] ima_collect_measurement+0x428/0x8f0 [ 76.076900][ T5321] ? __pfx_ima_collect_measurement+0x10/0x10 [ 76.076913][ T5321] ? kasan_quarantine_put+0xdd/0x220 [ 76.076925][ T5321] ? lockdep_hardirqs_on+0x9c/0x150 [ 76.076940][ T5321] ? hfsplus_getxattr+0x118/0x180 [ 76.076951][ T5321] ? kfree+0x19a/0x6d0 [ 76.076965][ T5321] ? __pfx_ima_get_hash_algo+0x10/0x10 [ 76.076981][ T5321] process_measurement+0x1121/0x1a40 [ 76.077001][ T5321] ? __pfx_process_measurement+0x10/0x10 [ 76.077017][ T5321] ? tomoyo_check_open_permission+0x16a/0x3b0 [ 76.077029][ T5321] ? __pfx_tomoyo_check_open_permission+0x10/0x10 [ 76.077047][ T5321] ? __pfx_apparmor_file_open+0x10/0x10 [ 76.077058][ T5321] ? mnt_get_write_access+0x66/0x280 [ 76.077068][ T5321] ? tomoyo_file_open+0x165/0x220 [ 76.077084][ T5321] ima_file_check+0xd7/0x120 [ 76.077099][ T5321] ? __pfx_ima_file_check+0x10/0x10 [ 76.077116][ T5321] security_file_post_open+0xbb/0x290 [ 76.077128][ T5321] path_openat+0x2f26/0x3830 [ 76.077147][ T5321] ? __pfx_path_openat+0x10/0x10 [ 76.077163][ T5321] do_filp_open+0x1fa/0x410 [ 76.077174][ T5321] ? __lock_acquire+0xab9/0xd20 [ 76.077185][ T5321] ? __pfx_do_filp_open+0x10/0x10 [ 76.077207][ T5321] ? _raw_spin_unlock+0x28/0x50 [ 76.077221][ T5321] ? alloc_fd+0x64c/0x6c0 [ 76.077237][ T5321] do_sys_openat2+0x121/0x1c0 [ 76.077249][ T5321] ? __pfx_do_sys_openat2+0x10/0x10 [ 76.077262][ T5321] ? rcu_is_watching+0x15/0xb0 [ 76.077274][ T5321] __x64_sys_openat+0x138/0x170 [ 76.077285][ T5321] do_syscall_64+0xfa/0xfa0 [ 76.077300][ T5321] ? lockdep_hardirqs_on+0x9c/0x150 [ 76.077313][ T5321] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.077324][ T5321] ? clear_bhb_loop+0x60/0xb0 [ 76.077335][ T5321] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.077345][ T5321] RIP: 0033:0x7f5da9d8f6c9 [ 76.077353][ T5321] Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48 [ 76.077360][ T5321] RSP: 002b:00007f5daac0e038 EFLAGS: 00000246 ORIG_RAX: 0000000000000101 [ 76.077370][ T5321] RAX: ffffffffffffffda RBX: 00007f5da9fe5fa0 RCX: 00007f5da9d8f6c9 [ 76.077375][ T5321] RDX: 0000000000000042 RSI: 0000200000000100 RDI: ffffffffffffff9c [ 76.077380][ T5321] RBP: 00007f5da9e11f91 R08: 0000000000000000 R09: 0000000000000000 [ 76.077385][ T5321] R10: 00000000000001ff R11: 0000000000000246 R12: 0000000000000000 [ 76.077390][ T5321] R13: 00007f5da9fe6038 R14: 00007f5da9fe5fa0 R15: 00007ffdb3f893f8 [ 76.077398][ T5321] [ 76.344462][ T25] audit: type=1800 audit(1762695185.352:2): pid=5321 uid=0 auid=4294967295 ses=4294967295 subj=unconfined op=collect_data cause=failed comm="syz.0.0" name="file1" dev="loop0" ino=20 res=0 errno=0 [ 76.355717][ T5321] syz.0.0 (5321) used greatest stack depth: 19880 bytes left [ 76.404542][ T1312] ieee802154 phy0 wpan0: encryption failed: -22 [ 76.407042][ T1312] ieee802154 phy1 wpan1: encryption failed: -22